我有一个值为'< 500'和'> 500'几百行。这是仅有的两个数字。现在,我想替换所有'< 500'与' xx'和所有'> 500'与' yy'。
有没有办法在单个SQL查询中替换这两个值,而不是使用两个单独的更新查询,如下所示:
UPDATE [table] SET [column] = 'xx' WHERE [column] = '< 500';
UPDATE [table] SET [column] = 'yy' WHERE [column] = '> 500';
我尝试使用Case,但无法使其正常工作。
答案 0 :(得分:3)
是的,使用case
声明:
UPDATE [table]
SET [column] = (CASE WHEN [column] = '< 500' THEN 'xx' ELSE 'yy' END)
WHERE [column] IN ('< 500', '> 500');