首页 > 解决方案 > 使用同一列中的值更新表中的唯一列

问题描述

我有一个表,其中有一列(比如名称),它有两个不同的值“A”和“B”,现在我想将 A 的所有行更新为 B,将 B 的所有行更新为 A。

我知道我们可以使用第三个值然后实现更新,但是我们有任何单一的查询解决方案吗?

标签: sqlsql-serverstringtsqlsql-update

解决方案


您可以使用条件表达式在单个语句中执行此操作:

update mytable
set name = case name
    when 'A' then 'B'
    when 'B' then 'A'
end

推荐阅读