您可能可以使用CASE
声明。我的猜测是你想要这样的东西
UPDATE table_name
SET column5 = (CASE WHEN column2 = 'Y'
THEN 'TEACHER'
WHEN column3 = 'Y'
THEN 'STUDENT'
ELSE null
END)
WHERE column2 = 'Y'
OR column3 = 'Y'
我猜你不想更新两个条件都不满足的行。如果要更新每一行,则需要删除该WHERE
子句,并且您可能需要调整两个条件都不满足的行的默认值(ELSE
中的)。CASE