如何从另一个表中的另一列更新表中的列

时间:2014-02-10 16:24:15

标签: sql

请我有一个table1,其中一列名为price。 我有另一个table2,其中一个列名为price。 我希望使用table2中的列价格更新table1中的列价。

我尝试过这个脚本,但没有更新它。

BEGIN 

UPDATE [WAC].[dbo].[IV00101]
   SET 
      [STNDCOST] = (Select LISTPRCE from IV00105 WHERE IV00101.ITEMNMBR = 'IV00105.ITEMNMBR')
      WHERE IV00101.ITEMNMBR = 'IV00105.ITEMNMBR'

END

请帮帮我。

谢谢

1 个答案:

答案 0 :(得分:2)

您的问题可能是因为您在引号中附上了IV00105.ITEMNMBR。这导致数据库引擎搜索名为“IV00105.ITEMNMBR”的项目,而不是连接这两个表并选取适当的行。

这将有效(假设表名基于您提供的查询):

UPDATE [WAC].[dbo].[IV00101]
SET 
    [STNDCOST] = LISTPRCE 
From IV00105 
WHERE [WAC].[dbo].[IV00101].ITEMNMBR = IV00105.ITEMNMBR