Ich erhalte ein Datum / Uhrzeit-Feld, das sich derzeit in der Abfrage befindet als:
SELECT DATE_FORMAT(x.date_entered, '%Y-%m-%d') AS date FROM x ORDER BY date ASC
Ich möchte 3 Stunden von diesem Datum abziehen (GMT-Probleme), aber ich kann es in PHP nicht tun, da PHP nur den Datumsteil kennt, nicht die Uhrzeit.
%Y-%m-%d
DATE_FORMAT()
- würde dasDATE(x.date_entered)
nicht schon tun? Die letzte Zeile wäreDATE(DATE_SUB(x.date_entered, INTERVAL 3 HOUR))
DATE_SUB
Direktive und es sollte funktionieren.Angenommen, Sie haben ein Zeitzonenproblem und kennen die Zeitzone von Quelle und Ziel. Sie können es auch so konvertieren
SELECT DATE_FORMAT(CONVERT_TZ(x.date_entered, 'UTC', 'Europe/Berlin'), '%Y-%m-%d') AS date FROM x ORDER BY date ASC;
quelle