【问题标题】:SQL multi-part identifier error on Update query更新查询上的 SQL 多部分标识符错误
【发布时间】:2019-02-03 19:37:37
【问题描述】:

谁能在下面的更新查询中指出我的问题?

【问题讨论】:

  • 我提到了关于同一问题的一些先前问题,但在这里无法弄清楚问题。

标签: sql-server tsql sql-server-2016


【解决方案1】:

要引用表,您必须在 FROMJOIN 子句中使用它:

UPDATE dbo.SALES_ORD_HDR
SET X_PickingSlip_Printed = 1
WHERE SEQNO IN (SELECT HEADER_SOURCE_SEQ FROM dbo.SALESORDHIST);
                                         -- here you are refering table

或者使用相关子查询:

UPDATE dbo.SALES_ORD_HDR
SET X_PickingSlip_Printed = 1
WHERE EXISTS (SELECT 1 FROM dbo.SALESORDHIST
              WHERE dbo.SALES_ORD_HDR.SEQNO = dbo.SALESORDHIST.HEADER_SOURCE_SEQ);

【讨论】:

    【解决方案2】:

    另一列在另一个表中。你必须像这样加入你的表(是两个表之间的一个例子,我不能给你确切的查询,因为我不知道你的模式是怎样的):

    UPDATE A SET
      A.COLUMN1 = 1
    FROM TABLE1 AS A
    JOIN TABLEB AS B ON A.ID = B.ID
    

    【讨论】:

      猜你喜欢
      • 2014-09-26
      • 1970-01-01
      • 2016-10-28
      • 1970-01-01
      • 2020-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多