Ich habe meine Datensätze basierend auf bestimmten Bedingungen aktualisiert, danach möchte ich die IDs aus den betroffenen Zeilen kennen.
%Vor%Nach dem Ausführen dieser Abfrage möchte ich nun die betroffenen Zeilen kennen.
Sie müssen zuerst die IDs abrufen und dann die Aktualisierung durchführen. Wenn Nebenläufigkeit ein Problem darstellt, können Sie eine Sperrung von Lesevorgängen verwenden (vorausgesetzt, Ihre Tabelle ist in einer transaktionalen Engine wie InnoDB gespeichert):
%Vor%Der einzige Weg, an den ich denken kann, ist, zuerst Zeilen zu sneektieren, die mit der update-Anweisung aktualisiert werden, das sind:
%Vor% Wir fügen xxx !='".$x."'
hinzu, weil, wenn der Wert von xxx
bereits $x
wäre, diese Zeilen nicht betroffen wären.
Als nächstes führen Sie das Update
aus %Vor%Um die letzte betroffene Zeile direkt nach der Anweisung zu finden, sollte sie wie folgt leicht aktualisiert werden:
%Vor%// benutze die Funktion
%Vor% Wenn Sie nur die wirklich geänderte Zeile aktualisieren möchten, fügen Sie eine bedingte Aktualisierung der Benutzer-ID durch LAST_INSERT_ID
hinzu und prüfen Sie, ob sich die Daten in der Zeile ändern.