2015-11-19 103 views
0

我正在SQL Server 2008上工作。我試圖根據另一個表中的值更新記錄。我不斷收到一個錯誤,說第5行和第6行的多部分標識符不能綁定。根據我所讀到的,似乎這是一個別名問題,所以我沒有使用任何別名,但我仍然陷入困境。這裏是我的代碼:SQL Server - 更新信息4104

UPDATE [REPORTING].[Prod].[dbo].[patient_procedure] 
SET [REPORTING].[Prod].[dbo].[patient_procedure].location_id=[REPORTING].[Prod].[dbo].[patient_encounter].location_id 
FROM [REPORTING].[Prod].[dbo].[patient_encounter] 
JOIN [REPORTING].[Prod].[dbo].[patient_procedure] 
ON [REPORTING].[Prod].[dbo].[patient_procedure].enc_id=[REPORTING].[Prod].[dbo].[patient_encounter].enc_id 
WHERE [REPORTING].[Prod].[dbo].[patient_procedure].enc_id='5EFE0E0B-447E-4D64-ADAB-001D084914A5' 
+0

當然,您已經檢查過數據類型... – Simone

回答

0

請試試這個查詢。

UPDATE [REPORTING].[Prod].[dbo].[patient_procedure] a 
SET a.location_id=b.location_id 
FROM [REPORTING].[Prod].[dbo].[patient_encounter] b 
inner JOIN a 
ON a.enc_id=b.enc_id 
WHERE a.enc_id='5EFE0E0B-447E-4D64-ADAB-001D084914A5' 

或者只是試試這個:::

UPDATE table1 a 
SET a.location_id=b.location_id 
FROM table b 
inner JOIN a 
ON a.enc_id=b.enc_id 
WHERE a.enc_id='5EFE0E0B-447E-4D64-ADAB-001D084914A5' 

注:表一個是要更新的表,而表2是將被連接的表。 Thnnk you