2012-03-14 44 views
-1

我試圖使用merge功能首次在SQL Server 2008,如下所示:合併錯誤 - SQL

MERGE PriceFeed AS t 
USING Products AS src 
ON t.sku = src.sku 

WHEN MATCHED THEN 
    UPDATE 
    SET src.price = t.price 
; 

但我得到的錯誤"The multi-part identifier "src.price" could not be bound.",不知道爲什麼,在這種情況下?

饋送數據中的sku與產品表中的sku匹配。

+0

您是否在uv產品表中列出價格欄? – Teja 2012-03-14 17:22:41

+0

@Venk是這裏有兩個表中的價格列 – user1186144 2012-03-14 17:23:20

+2

從http://msdn.microsoft.com/en-us/library/bb522522.aspx,您可能需要更正您放置表的順序:' MERGE Target AS T 使用源代碼S' – diaho 2012-03-14 17:25:46

回答

0
MERGE PriceFeed AS t 
USING Products AS src 
ON t.sku = src.sku 

WHEN MATCHED THEN 
    UPDATE 
    SET t.price = src.price 
; 

檢查MERGE語法在這裏..它很好地解釋了這裏的例子。

http://blog.sqlauthority.com/2008/08/28/sql-server-2008-introduction-to-merge-statement-one-statement-for-insert-update-delete/

+0

這是否正在尋找...你正在設置源列與你的目標列..它應該是其他方式.. – Teja 2012-03-14 17:25:08

+0

哈容易修復,我認爲它看起來是正確的設置src等於t(飼料)表,但反過來,因爲你建議的作品?! – user1186144 2012-03-14 17:27:13

+0

接受我的答案,如果你喜歡它.. – Teja 2012-03-14 17:29:14