如何MySQL两个日期相加并与当前时间戳进行比较


How to MySQL two dates sum and compare with current timestamp

我想将日期与当前时间和我应用的逻辑相加和比较如下:

SELECT 
    (TIMESTAMP(field1) + TIMESTAMP(field2)) AS t,  
    TIMESTAMP(NOW()) AS tt 
FROM
    table1

但它不能正常工作。比较给出错误的结果或为空。我认为这是时区问题,我已经为 PHP 和 MySQL 设置了通用时区。

有没有其他方法可以对两个日期求和并进行比较?

我想像下面这样比较

(TIMESTAMP(field1) + TIMESTAMP(field2)) <  TIMESTAMP( NOW( ) ) 

或查询:

SELECT * 
FROM table 
WHERE (TIMESTAMP(field1) + TIMESTAMP(field2))  as t , TIMESTAMP( NOW( ) )

谢谢

您当前的where条件没有意义,并且在语法上是错误的,如下所示

where (TIMESTAMP(field1) + TIMESTAMP(field2))  as t , TIMESTAMP( NOW( ) )

它应该是

where TIMESTAMP(field1, field2) < TIMESTAMP(NOW())

可以将表达式field1field2传递给TIMESTAMP函数。请参阅文档