Hallo zusammen,
ich benötige Rat von Euch.
Und zwar möchte ich wissen, ob es bei MySQL die Möglichkeit gibt, mehrere Update-Anweisungen in einem Query durchzuführen.
Ich möchte damit folgede Problematik umgehen:
Angenommen wir haben eine Tabelle mit Kundendaten und wir möchten die Vornamen zweier Datensätze tauschen (der Sinn sei Nebensache, es geht mir um die Funktionalität).
Also:
kndnr | vorname | nachname
1 | vorname1 | nachname1
2 | vorname2 | nachname2
Ich schreibe mal ein Query um das Ziel zu verdeutlichen:
UPDATE tab_user SET vorname = 'vorname1' WHERE vorname = 'vorname2' AND SET vorname = 'vorname2' WHERE vorname = 'vorname1'
(Funktioniert in der Form natürlich nicht.)
Also es soll ein Update der Felder in Abhängigkeit des aktuellen Wertes des Feldes erfolgen.
Warum ich danach frage ist folgender Grund:
Es ist nicht möglich die Updates hintereinander (also getrennt) durchzuführen, da sich beim ersten Update der Feldwert und somit die Bedinungung für das zweite Update ändern würde.
Möglich ist es natürlich zuvor die Datensätze zu cachen (in meinem Fall mit PHP), die Änderungen dort vorzunehmen und Anschließend die Tabelle zu aktualisieren.
Mir geht es grundzätzlich aber um die Möglichkeiten von MySQL bzw. wie man mein geschildertes Verfahren denn betitelt um gezielter danach suchen zu können.
Ich bedanke mich für Eure Hilfe!
Grüße
ich benötige Rat von Euch.
Und zwar möchte ich wissen, ob es bei MySQL die Möglichkeit gibt, mehrere Update-Anweisungen in einem Query durchzuführen.
Ich möchte damit folgede Problematik umgehen:
Angenommen wir haben eine Tabelle mit Kundendaten und wir möchten die Vornamen zweier Datensätze tauschen (der Sinn sei Nebensache, es geht mir um die Funktionalität).
Also:
kndnr | vorname | nachname
1 | vorname1 | nachname1
2 | vorname2 | nachname2
Ich schreibe mal ein Query um das Ziel zu verdeutlichen:
UPDATE tab_user SET vorname = 'vorname1' WHERE vorname = 'vorname2' AND SET vorname = 'vorname2' WHERE vorname = 'vorname1'
(Funktioniert in der Form natürlich nicht.)
Also es soll ein Update der Felder in Abhängigkeit des aktuellen Wertes des Feldes erfolgen.
Warum ich danach frage ist folgender Grund:
Es ist nicht möglich die Updates hintereinander (also getrennt) durchzuführen, da sich beim ersten Update der Feldwert und somit die Bedinungung für das zweite Update ändern würde.
Möglich ist es natürlich zuvor die Datensätze zu cachen (in meinem Fall mit PHP), die Änderungen dort vorzunehmen und Anschließend die Tabelle zu aktualisieren.
Mir geht es grundzätzlich aber um die Möglichkeiten von MySQL bzw. wie man mein geschildertes Verfahren denn betitelt um gezielter danach suchen zu können.
Ich bedanke mich für Eure Hilfe!
Grüße
Zuletzt bearbeitet: