如何从 MySQL 中的日期时间中减去小时数?

2021-11-20 00:00:00 datetime mysql gmt

我得到一个日期时间字段,它当前在查询中为:

I get a datetime field, that's currently in the query as:

SELECT DATE_FORMAT(x.date_entered, '%Y-%m-%d') AS date FROM x ORDER BY date ASC

我想要做的是从那个日期减去 3 小时(格林威治标准时间问题),但我不能在 PHP 中做到这一点,因为 PHP 只知道日期部分,而不知道时间.

What I want to do is to subtract 3 hours from that date (GMT issues), but I can't do it in PHP as PHP only knows the date part, not the time.

推荐答案

mySQL 具有 DATE_SUB():

mySQL has DATE_SUB():

SELECT DATE_SUB(column, INTERVAL 3 HOUR)....

但是尝试解决潜在的时区问题不是更好吗?

but would it not be better to try and sort out the underlying time zone issue instead?

相关文章