我有两列: beginTime和duration。我在试着计算endTime。问题是我得到的结果是空的。
我试过几种方法。
DATE_ADD(startTime, INTERVAL `duration` MINUTE) AS endTime
DATE_ADD(startTime, INTERVAL '10' MINUTE) AS endTime
DATE_ADD(startTime, INTERVAL 10 MINUTE) AS endTime但每次结果都是空的。startTime不为空。它是一个时间字段,格式为09:00:00。
有人能帮我吗?
发布于 2009-09-14 13:07:58
如果时间格式不正确,DATE_ADD将返回NULL,并显示警告:
mysql> \W
Show warnings enabled.
mysql> SELECT DATE_ADD('25:00:00', INTERVAL 10 MINUTE) AS endTime
-> ;
+---------+
| endTime |
+---------+
| NULL |
+---------+
1 row in set, 1 warning (0.00 sec)
Warning (Code 1292): Incorrect datetime value: '25:00:00'还要注意,'hh:mm:ss'不是正确的日期时间格式。您还需要有年、月和日。
您是否可以在MySQL中启用警告并对您的数据重复查询?
发布于 2009-09-14 13:05:33
这对我来说很有效:
SELECT DATE_ADD(`startTime`, INTERVAL 10 MINUTE) AS endTime FROM `users` WHERE 1发布于 2009-09-14 13:07:51
在DATE_ADD中,第一个参数应该是日期字段,而不是时间字段。您可以尝试将开始时间更改为日期格式('0000-00-00 00:00:00'),然后尝试吗?
https://stackoverflow.com/questions/1421409
复制相似问题