Datediff 秒 return 错误
Datediff seconds return error
我有一个变量 $date="2016-10-09 10:44:03";
和按 date_post
(TIMESTAMP CURRENT_TIMESTAMP
) 排序的消息列表。 ($date
总是低于 date_post
秒)
我想 return 结果来自
SELECT *,DATEDIFF(second, $date,date_post) AS duration
FROM messages
WHERE condition
但是 return 错误
supplied argument is not a valid MySQL result resource in ....
本应return一个数字,但只是return错误。根据语法,$date
必须先写在DATEDIFF
中。我尝试使用 CAST($date)
,但没有用。使用前需要修改$date
吗?如果我使用 DATEDIFF(date_post,date_post)
returns 0
,但使用 $date
returns 错误
如果你想要以秒为单位的差异,最简单的方法是使用 to_seconds()
:
SELECT m.*,
( to_seconds(date_post) - to_seconds($date) )AS duration
FROM messages m
WHERE condition;
您使用的函数是SQL服务器函数。在 MySQL、datediff()
returns 中两个日期之间的天数差异。
我有一个变量 $date="2016-10-09 10:44:03";
和按 date_post
(TIMESTAMP CURRENT_TIMESTAMP
) 排序的消息列表。 ($date
总是低于 date_post
秒)
我想 return 结果来自
SELECT *,DATEDIFF(second, $date,date_post) AS duration
FROM messages
WHERE condition
但是 return 错误
supplied argument is not a valid MySQL result resource in ....
本应return一个数字,但只是return错误。根据语法,$date
必须先写在DATEDIFF
中。我尝试使用 CAST($date)
,但没有用。使用前需要修改$date
吗?如果我使用 DATEDIFF(date_post,date_post)
returns 0
,但使用 $date
returns 错误
如果你想要以秒为单位的差异,最简单的方法是使用 to_seconds()
:
SELECT m.*,
( to_seconds(date_post) - to_seconds($date) )AS duration
FROM messages m
WHERE condition;
您使用的函数是SQL服务器函数。在 MySQL、datediff()
returns 中两个日期之间的天数差异。