0

我有一个产品表。我有一些空行。我想用现有的行填充这些行。例如,如果我有

Product
-----------------------------------
ID   Name  Desc  ---------------
1     A     A1   ---------------
2     B     B1   ---------------
3     C     C1   ---------------

我想将 ID=1 的所有项目复制到 ID = 3 行。

试过这个但得到错误,模棱两可

UPDATE [Products]
SET DP.[Name] = SP.Name 
    ,DP.[Desc] = SP.DESC                          
FROM    [Products] DP
       INNER JOIN [Products] SP ON SP.ID = 3
WHERE DP.ID = 1
4

1 回答 1

1

您需要在 UPDATE 中使用别名 - DP 或 SP 而不是 Products 本身,因为它在两者之间是模棱两可的。

UPDATE DP
SET DP.[Name] = SP.Name 
    ,DP.[Desc] = SP.[DESC]                          
FROM    [Products] DP
INNER JOIN [Products] SP ON SP.ID = 3
WHERE DP.ID = 1
于 2013-04-04T08:16:05.050 回答