現在、クエリに含まれている日時フィールドを取得します:
SELECT DATE_FORMAT(x.date_entered, '%Y-%m-%d') AS date FROM x ORDER BY date ASC
私がしたいのは、その日付から3時間を減算することです(GMTの問題)が、PHP as PHP時間ではなく日付部分。
mySQLには DATE_SUB()
:
SELECT DATE_SUB(column, INTERVAL 3 HOUR)....
しかし、代わりに根本的なタイムゾーンの問題を整理しようとする方が良いでしょうか?
タイムゾーンの問題があり、ソースとターゲットのタイムゾーンがわかっていると仮定すると、次のように変換できます
SELECT DATE_FORMAT(CONVERT_TZ(x.date_entered, 'UTC', 'Europe/Berlin'),
'%Y-%m-%d') AS date
FROM x ORDER BY date ASC;