SQL: 2 Werte in einer Spalte vertauschen, ohne einen Zwischenwert zu verwenden

SQL: 2 Werte in einer Spalte vertauschen, ohne einen Zwischenwert zu verwenden

Gibt es in einer Tabelle mit einer einzigen Spalte, die nur zwei Werte enthält, beispielsweise „A“ und „B“, eine Möglichkeit, diese in einer einzigen Anweisung auszutauschen?

Ex:

A
B
A
B

Zu

B
A
B
A

Es ist ein trivialer Vorgang, wenn wir ein Bit oder einen Platzhalterwert verwenden (alles A in C, alles B in A, alles C in B ändern), aber gibt es dafür eine allgemeine Methode?

Antwort1

Also gut, eine Anweisung wie diese funktioniert:

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

Ich lasse das hier stehen, falls Leute bessere Ansätze haben, es sei denn, es gibt Anfragen, es zu löschen

verwandte Informationen