我想知道如何在一个查询中交换同一个表中同一列的值。
例如,Table如下所示。
SerialNo Status
1 Married
2 Single
3 Married
现在,结果我想要的是“结婚”应该转换成单身,“单身”应该转换成结婚。
预期:
SerialNo Status
1 Single
2 Married
3 Single
这应该只在一个查询中完成。是否可以使用单个查询执行此操作?如果是,请帮帮我。
提前致谢。
答案 0 :(得分:5)
UPDATE MyTable
SET Status = (CASE WHEN Status = 'Married' THEN 'Single' ELSE 'Married' END )
答案 1 :(得分:1)
使用此:
SET Status = CASE WHEN Status = 'Married' THEN 'Single'
WHEN Status = 'Single' THEN 'Married'
ELSE 'Unknown' END