Hallo,
ich habe in einem PHP-Skript eine generierte SQL-Query, die bestimmte Datensätze aus einer Tabelle A ausliest und in eine andere Tabelle B einfügt und ein paar Flags dort setzt. Wenn der Gewünschte Datensatz (UID) schon in der Tabelle B vorhanden ist, kann er natürlich nicht mehr hinzugefügt werden sondern es soll nur das entsprechende Flag gesetzt werden. Abstrahiert:
Wie kann ich jetzt eine Ausgabe erzielen die ca. so aussieht:
Diesen Code habe ich schon ausprobiert: php - MySQL on duplicate key update + affected row count - Stack Overflow aber da kommen nicht die richtigen Zahlen raus.
ich habe in einem PHP-Skript eine generierte SQL-Query, die bestimmte Datensätze aus einer Tabelle A ausliest und in eine andere Tabelle B einfügt und ein paar Flags dort setzt. Wenn der Gewünschte Datensatz (UID) schon in der Tabelle B vorhanden ist, kann er natürlich nicht mehr hinzugefügt werden sondern es soll nur das entsprechende Flag gesetzt werden. Abstrahiert:
Code:
INSERT IGNORE INTO TableA (UID, Flag1, Flag2)
SELECT b.UID, 1, 1
FROM TabelB b
ON DUPLICATE KEY UPDATE
Flag1 = 1, Flag2 = 1;
Wie kann ich jetzt eine Ausgabe erzielen die ca. so aussieht:
Anzahl neu hinzugefüger Datensätze: 99
Anzahl aktualisierte Datensätze: 302
= Anzahl betroffener Datensätze: 401
Diesen Code habe ich schon ausprobiert: php - MySQL on duplicate key update + affected row count - Stack Overflow aber da kommen nicht die richtigen Zahlen raus.