我在CASE中有一个CASE stmt,代码如下:我需要达到下面的条件,但是下面的代码不工作。有人能改正这段代码吗?
这里,如果mgmt.id不是NULL,那么status_fl应该设置为'Y',如果mgmt.id是NULL,那么我们需要检查条件如果staff.No不是NULL,则将status_fl更新为'Y‘,否则将status_fl更新为'N’。提前谢谢。
UPDATE emp SET status_fl=
WHEN mgmt.id IS NOT NULL THEN 'Y'
WHEN mgmt.id IS NULL THEN
WHEN staff.No IS NOT NULL THEN 'Y' ELSE 'N' END
FROM EMPLOYEE emp
LEFT OUTER JOIN Management mgmt on emp.id=mgmt.id
LEFT OUTER JOIN Staff staff ON staff.No=emp.No发布于 2021-06-04 17:15:42
下面的查询解决了您的问题吗?
UPDATE emp SET status_fl=
CASE
WHEN mgmt.id IS NOT NULL THEN 'Y'
WHEN mgmt.id IS NULL and staff.No IS NOT NULL THEN 'Y'
ELSE 'N' END
FROM EMPLOYEE emp
LEFT OUTER JOIN Management mgmt on emp.id=mgmt.id
LEFT OUTER JOIN Staff staff ON staff.No=emp.Nohttps://stackoverflow.com/questions/67834122
复制相似问题