【发布时间】:2013-07-03 05:09:19
【问题描述】:
以下更新语句是我第一次尝试在更新语句上使用内连接。我的语法错误,但我不确定在哪里,但我不断收到命令未正确结束的错误。任何人都可以帮助解决这个问题。
UPDATE m_rqgrechunk a
SET a.persondept = b.persondept
FROM m_rqgrechunk a
INNER JOIN m_person_persondept_hist b
ON a.person = b.person
WHERE ( ( b.from_date IS NULL
AND b.to_date IS NULL )
OR ( b.from_date IS NULL
AND a.create_date < b.to_date )
OR ( a.create_date >= b.from_date
AND a.create_date < b.to_date )
OR ( a.create_date >= b.from_date
AND a.to_date IS NULL ) )
AND a.persondept IS NULL
【问题讨论】:
-
基于“命令未正确结束”我假设是 Oracle。
-
@Ryan - 这在 TSQL 的专有
UPDATE ... FROM语法中有效。但根据错误消息,他们似乎没有使用 SQL Server。