【问题标题】:The multi-part identifier could not be bound - SET clause无法绑定多部分标识符 - SET 子句
【发布时间】:2017-04-18 22:08:59
【问题描述】:

我已经搜索过这个答案,但大多数似乎来自正在更新的表,而不是从中获取信息的表。

SET 中的第一个 B.DED1 是抛出多部分标识符的那个。然而 WHERE 子句中的那个就可以了。

UPDATE #output
SET col1 = B.DED1
SELECT * 
FROM #output A  
 INNER JOIN TableName B
 ON A.Key = B.Key
WHERE B.DED1 = 'col1'

【问题讨论】:

  • 请以文本格式添加表格的表格结构。

标签: sql sql-server join


【解决方案1】:
UPDATE A
SET col1 = B.DED1
FROM [#output] A  
 INNER JOIN TableName B
 ON A.Key = B.Key
WHERE B.DED1 = 'col1'

【讨论】:

  • 哇,我感觉自己像个白痴,里面有一个 SELECT 语句。测试后忘记将其删除以确保连接正常工作。谢谢!
  • 随时 :) 很高兴为您提供帮助
【解决方案2】:

将您的查询更改如下:

UPDATE O SET col1 = B.DED1
FROM [#output] O  
INNER JOIN TableName B
ON O.Key = B.Key
WHERE B.DED1 = 'col1'

【讨论】:

    猜你喜欢
    • 2023-03-19
    • 1970-01-01
    • 2013-01-17
    • 2011-11-10
    • 2010-11-02
    • 2023-03-21
    相关资源
    最近更新 更多