2015-04-22 78 views
0

我已经看过很多帖子,并且遵循以下语法来编写下面的查询。但它仍然给出错误“Column/Parameter wm_ad_hoc.temp.temp does not exist更新列在使用另一个表中的数据的Teradata表中

请协助搞清楚我在这里做错了什么。

UPDATE temp 
FROM wm_ad_hoc.OWNED_ITEM_STORE_DLY temp, 
     wm_ad_hoc.OWNED_ITEM_STORE_DLY_UTIL util 
SET temp.VENDOR_STOCK_ID = util. VENDOR_STOCK_ID, 
     temp.ON_HAND_EACH_QTY = util. ON_HAND_EACH_QTY, 
     temp.VENDOR_STOCK_ID = util.VENDOR_STOCK_ID 
WHERE temp. VENDOR_NBR = util. VENDOR_NBR 
AND temp.WMI_ITEM_NBR = util.WMI_ITEM_NBR 
AND temp. store_nbr = util. store_nbr 
AND temp.BUSINESS_DATE = util.BUSINESS_DATE 
+0

你确定关于错误吗?双temps在这里'm_ad_hoc.temp.temp'看起来很混乱 – Rocketq

+0

对于一个你的表名和列名之间有空格。 '在哪里温度。 VENDOR_NBR = util。 VENDOR_NBR'应该是'WHERE temp.VENDOR_NBR = util.VENDOR_NBR' – JNevill

+1

@JNevill空格不会改变任何东西,sql只是忽略它们 – Rocketq

回答

2

您需要不符合您的SET列。所以:

UPDATE temp 
FROM wm_ad_hoc.OWNED_ITEM_STORE_DLY temp, 
     wm_ad_hoc.OWNED_ITEM_STORE_DLY_UTIL util 
SET VENDOR_STOCK_ID = util.VENDOR_STOCK_ID, 
     ON_HAND_EACH_QTY = util.ON_HAND_EACH_QTY, 
     VENDOR_STOCK_ID = util.VENDOR_STOCK_ID 
... 
+0

是的,它工作!!!!!谢谢一堆。 –

+0

必须从SET部分删除限定条件,但必须将它们保留为WHERE子句。 –

相关问题