SQL: intercambia 2 valores en una columna sin usar un valor intermedio

SQL: intercambia 2 valores en una columna sin usar un valor intermedio

Dada una tabla con una sola columna que contiene solo 2 valores, digamos 'A' y 'B', ¿hay alguna manera de intercambiarlos en una sola declaración?

Ex:

A
B
A
B

a

B
A
B
A

Es un proceso trivial si usamos un bit o un valor de marcador de posición (cambiar todo A por C, todo B por A, todo C por B), pero ¿existe un método generalizado para hacer esto?

Respuesta1

Muy bien, entonces una declaración como esta funciona:

update tab set col=IIF(col='A','B','A')

Dejaré esto en caso de que la gente tenga mejores enfoques, a menos que haya solicitudes para eliminarlo.

información relacionada