【问题标题】:Unknown SQL Syntax Error near Keyword 'left'关键字“左”附近的未知 SQL 语法错误
【发布时间】:2021-06-10 02:03:30
【问题描述】:

我收到一个语法错误“关键字'left'附近的语法不正确”,但我不知道我做错了什么。我正在尝试运行更新查询以将法国地址设置为 5。我错过了什么?

UPDATE
    Persons p
    left join States s on p.StateID = p.pkState
SET
    p.International = 5
WHERE
    s.CountryRegionCodeID = 'FR';

【问题讨论】:

  • docs 应该始终是您的第一个停靠港。
  • 这是 MySQL 语法,在 MySQL 中,连接位于 SET 之前,这就是为什么您可能已经看到了使用该语法的示例。

标签: sql sql-server join sql-update where-clause


【解决方案1】:

SQL Server 中的正确语法使用FROM 子句:

UPDATE p
    SET p.International = 5
    FROM Persons p JOIN
         States s 
         ON p.StateID = p.pkState
    WHERE s.CountryRegionCodeID = 'FR';

注意:我将 LEFT JOIN 更改为 JOIN。无论如何,WHERE 子句将外连接变成内连接。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 2011-08-30
    • 1970-01-01
    • 2020-02-18
    • 1970-01-01
    相关资源
    最近更新 更多