【问题标题】:Sql Server 2008 Update column with a join [duplicate]带有连接的Sql Server 2008更新列[重复]
【发布时间】:2015-04-29 09:40:44
【问题描述】:

我已经对 MySql 进行了很多更新,并在此处阅读了很多问题和答案,但由于某种原因,我的代码无法正常工作。 我不断在 Inner 附近收到 Err 42000 不正确的语法,或者我放在这里的任何东西。 我的代码

Update
    Table1
Inner Join
    Table2 on Table2.column = Table1.column
Set
    Table1.column = 'Random'
Where
    table1.ID = '32'

【问题讨论】:

    标签: sql-server join sql-update


    【解决方案1】:

    你快到了……

    Update  Table1
       Set   Table1.column = 'Random'
    FROM Table1 
    Inner Join  Table2 on Table2.column = Table1.column
    Where  table1.ID = '32'
    

    别名版本看起来像.....

    Update  T1
        Set   T1.column = 'Random'
    FROM Table1 T1 
    Inner Join  Table2 T2 on T2.column = T1.column
    Where  T1.ID = '32'
    

    【讨论】:

    • 这有点奏效。为了测试我决定针对 1 个特定帐户进行测试,我不再收到错误代码,但它不会更新任何帐户。
    【解决方案2】:

    你已经接近了。这是您的 UPDATE 语句的语法。试试这个:

    UPDATE [Table1]
    SET [Column] = 'Random'
    FROM [Table1]
    INNER JOIN [Table2] ON [Table2].[column] = [Table1].[column]
    WHERE [Table1].[ID] = '32'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多