2014-11-25 57 views
0

我有兩個SQL Server表:ORDERSDELIVERIESSQL腳本:更新列上的另一個表上的樞軸ID

我想更新ORDERS表,其值爲DELIVERIESORDERS PK(OrderID)對於兩個表都是通用的。此外,我想將操作限制在特定的CustomerID(在ORDERS之內)。

ORDERS表:

OrderID | AccountID | AnalysisField1 

DELIVERIES表:

DeliveryID | OrderID | AddressName 

我想從DELIVERIES.AddressName值(由OrderID鏈接),但只有其中ORDERS.AccountID = '12345'

請幫忙更新ORDERS.AnalysisField1。 JM

回答

0

然後嘗試使用這樣的:

UPDATE dbo.Orders 
SET AnalysisField1 = d.Addressname 
FROM dbo.Deliveries d 
WHERE 
    d.OrderID = dbo.Orders.OrderID 
    AND dbo.Orders.AccountID = '12345' 

如果您AccountID列是數值類型(其中ID後綴所暗示的),那麼你應該把不必要的單引號圍繞WHERE子句中的值:

AND dbo.Orders.AccountID = 12345