MySQL-Abfrage zum Aktualisieren von Datensätzen mit erhöhtem Datum
ich versuche zu
das letzte Datum in einer Datenbank abrufen undAnhand dieses Datums wird jeder Datensatz aktualisiert, der eineNULL
Datum, erhöht das Datum um 1 Tag.Ich kann das späteste Datum erhalten, indem ich benutzeLetztes Date Abfrage unten. Ich muss dies zuerst tun, da die Daten in der Tabelle sindnicht in Ordnung. Bei Bedarf kann ich diese Abfrage ausführen, sie manuell aufschreiben und dann ausführenUPDATE
Abfrage basierend auf diesem Datum. Ich würde es vorziehen, alles ohne den manuellen Prozess auszuführen.
Die letzte Frage, die ich am Ende der Frage habe, ist meineTestabfrage für den Versuch, die Daten zu aktualisieren, hatte ich jedoch kein Glück, es zum Laufen zu bringen.
Tabelle (Daten sind nicht in Ordnung)
id date
----- ----------
10500 2013-08-18
10501 2013-08-16
10502 2013-08-17
10503 2013-08-19
10504 NULL
10505 NULL
...
11800 NULL
11801 NULL
Auswahl des spätesten Datums (Startpunkt fürUPDATE
)
SELECT date
FROM my_table
ORDER BY date DESC
LIMIT 1
AktualisierungNULL
Termine (funktioniert nicht)
UPDATE my_table
SET date = DATE_ADD((SELECT date FROM my_table ORDER BY date DESC LIMIT 1), INTERVAL 1 DAY)
WHERE date IS NULL
ORDER BY id ASC
Wie kann ich das erreichen? Oder ist das nicht möglich?