日時フィールドが表示されます。これは現在、次のようにクエリに含まれています。
SELECT DATE_FORMAT(x.date_entered, '%Y-%m-%d') AS date FROM x ORDER BY date ASC
私がやりたいのは、その日付から3時間を引くことです(GMTの問題)が、PHPは時刻ではなく日付の部分しか知らないため、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;