Um zwei Spalten auszutauschen, können wir die folgende Vertauschungslogik anwenden.
Fügen Sie beide Werte hinzu und speichern Sie sie in der ersten Spalte
Subtrahieren Sie den Wert der ersten Spalte vom zweiten und speichern Sie ihn in der zweiten Spalte.
Subtrahieren Sie den Wert der ersten Spalte von der aktualisierten zweiten Spalte und speichern Sie ihn in der ersten.
Die obige Regelstruktur ist wie folgt. Angenommen, die erste Spalte ist a und die zweite Spalte ist b.
1. a = a+b; 2. b = a-b; 3. a = a-b;
Jetzt wenden wir die obige Regel an, um die beiden Spaltenwerte zu vertauschen.
Eine Tabelle erstellen.
mysql> create table SwappingTwoColumnsValueDemo -> ( -> FirstColumnValue int, -> SecondColumnValue int -> ); Query OK, 0 rows affected (0.49 sec)
Einige Datensätze einfügen.
mysql> insert into SwappingTwoColumnsValueDemo values(10,20),(30,40),(50,60),(70,80),(90,100); Query OK, 5 rows affected (0.19 sec) Records: 5 Duplicates: 0 Warnings: 0
Um die Spaltenwerte vor dem Austausch zu überprüfen.
mysql> select *from SwappingTwoColumnsValueDemo;
Das Folgende ist die Ausgabe.
+------------------+-------------------+ | FirstColumnValue | SecondColumnValue | +------------------+-------------------+ | 10 | 20 | | 30 | 40 | | 50 | 60 | | 70 | 80 | | 90 | 100 | +------------------+-------------------+ 5 rows in set (0.00 sec)
Syntax zum Austauschen von Spaltenwerten.
mysql> UPDATE SwappingTwoColumnsValueDemo -> SET FirstColumnValue = FirstColumnValue+SecondColumnValue, -> SecondColumnValue = FirstColumnValue-SecondColumnValue, -> FirstColumnValue = FirstColumnValue-SecondColumnValue; Query OK, 5 rows affected (0.15 sec) Rows matched: 5 Changed: 5 Warnings: 0
Um zu überprüfen, ob die Spaltenwerte vertauscht wurden oder nicht.
mysql> select *from SwappingTwoColumnsValueDemo;
Das Folgende ist die Ausgabe.
+------------------+-------------------+ | FirstColumnValue | SecondColumnValue | +------------------+-------------------+ | 20 | 10 | | 40 | 30 | | 60 | 50 | | 80 | 70 | | 100 | 90 | +------------------+-------------------+ 5 rows in set (0.00 sec)
Das obige ist der detaillierte Inhalt vonWerte zweier Spalten in MySQL vertauschen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!