仅当另一个表中存在匹配行时,对于主表中该列当前为空的所有行,我才需要将表上的字段更新为 true。
这是我想要实现的目标的描述:
UPDATE [LenqReloaded].[dbo].[Enquiry] A
SET [ResponseLetterSent] = 1
WHERE [ResponseLetterSent] IS NULL
AND EXISTS
(
SELECT * FROM [LenqReloaded].[dbo].[Attachment] B
WHERE A.[EnquiryID] = B.[EnquiryID]
)
这在语法上是不正确的。
我无法通过 IF EXISTS... 语句对其进行编码,因为如果不从表中读取数据,我就没有 [EnquiryID]。
我应该如何格式化 UPDATE 语句?
你就在不远的地方...
UPDATE A
SET A.[ResponseLetterSent] = 1
FROM [LenqReloaded].[dbo].[Enquiry] A
WHERE A.[ResponseLetterSent] IS NULL
AND EXISTS ( SELECT * FROM [LenqReloaded].[dbo].[Attachment] B WHERE A.[EnquiryID] = B.[EnquiryID] )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)