我在mysql中有这个表
Date one | Date tow |
2012-05-20 | 2012-05-04 | = 16 days
2012-05-12 | 2012-05-08 | = 4 days
= 20 days
我希望选择两个日期之间的差异然后总结所有日期。
答案 0 :(得分:2)
如果您应该在MySQL中执行此操作,则可以使用DATEDIFF函数。
SELECT DATEDIFF(dateone, datetwo) AS d FROM tablename
然后你可以按照你想要的方式聚合这个结果,例如
SELECT SUM(DATEDIFF(dateone, datetwo)) AS s FROM tablename
您可以在获取日期后在PHP中执行此操作
答案 1 :(得分:0)
SELECT SUM(DATEDIFF(`Date one`, `Date tow`)) FROM `Table`
请参阅DATEDIFF()
和SUM()
。
请注意,在MySQL中,您无需使用GROUP BY
即可使用聚合函数SUM()
。在这种情况下,MySQL会将所有行视为一个组。
答案 2 :(得分:0)
您可以尝试以下查询。希望它能解决这个问题。
SELECT SUM(DATEDIFF(DATE1,DATE2)), FROM TABLE
答案 3 :(得分:0)
您可以在mysql中使用DATEDIFF
函数。
SET @runtot:=0;
SELECT DATEDIFF(one,tow) AS diff, (@runtot := @runtot + DATEDIFF(one,tow)) AS runningsum
FROM table