sql - SQL Server中的更新语句中的错误

标签 sql sql-server sql-server-2012 syntax-error

我下面有这个查询。当我尝试执行它时,我看到此错误:

Incorrect syntax near the keyword 'FROM'.



查询:
UPDATE T
SET T.COUNTRY_ID = DS.COUNTRY_ID,
    T.GEO_CUST_COUNTRY_ID = DS.GEO_CUST_COUNTRY_ID
FROM
    DS_TRANS DS, TRANSACTIONS T
WHERE
    DS.ID = T.ID

有人可以帮忙吗?

最佳答案

FROM子句前面的逗号是问题。

您还可以使用JOIN代替逗号分隔的表。

因此,工作代码将是:

UPDATE T
SET T.COUNTRY_ID = DS.COUNTRY_ID,
    T.GEO_CUST_COUNTRY_ID = DS.GEO_CUST_COUNTRY_ID
FROM TRANSACTIONS T
JOIN DS_TRANS DS ON DS.ID = T.ID

关于sql - SQL Server中的更新语句中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38239007/

相关文章:

mysql - 如何在mysql上实现2个或多个触发器

sql - 如果 SQL Server 2008 记录不存在/存在,如何插入/更新?

sql-server - SQL Server 阿拉伯语问号

SQL Server DATEDIFF 计算列之间的行

MySQL 将行转为动态数量的列

mysql - 检查两个日期之间的日期或sql中的NULL

mysql - GROUP_CONCAT 与连接导致双记录

c# - 无法使用身份验证 = Active Directory 托管标识从 dotnet Web 应用程序连接到 Azure SQL MI

c# - SqlConnection 并避免升级到 MSDTC

sql - 为所有记录选择一个最大值