【发布时间】:2016-07-19 05:23:33
【问题描述】:
试图运行一个简单的更新查询,但它在第 5 行抛出以下错误
update t3
set t3.Act_Flg = 'N', t3.ActiveEndDate = getdate()
from dbo.STG_EmployeeMaster_TEMP t3
inner join dbo.TEMP_EmployeeMaster t1 on t3.GPN = t1.GPN, t3.Name = t1.Name
where t1.RecordChangedFlag = 'Y'
它正在抛出一个错误:
“=”附近的语法不正确。
我没有得到错误在哪里?
【问题讨论】:
-
join在两个条件下应该使用and而不是,来分隔 -
“不知道为什么它不喜欢逗号” - 因为它的语法不正确 - 请改用
AND, -
join条件必须简化为布尔值 true(包括连接的记录)或 false(排除记录)。究竟应该如何评估t3.gpn=t1.tpn, t3.name=t1.name?true,false是什么? -
@xbb -
and或or取决于意图,无论如何。
标签: sql sql-server