我想写一个SQL语句,它会返回每天的记录数。SQL dateadd and datediff
这是我的表
id | ip | date
----------------------------------------
1 136.196.41.91 2017-01-01 11:08:14
2 28.158.146.198 2017-01-01 11:08:15
3 209.140.42.236 2017-01-01 11:08:16
4 241.184.227.171 2017-01-02 11:08:17
5 6.183.99.169 2017-01-02 11:08:18
6 105.18.254.15 2017-01-03 11:08:19
预期的结果类似的话来:
2017-01-01: 3
2017-01-02: 2
2017-01-03: 1
余米尝试这种
select date, count(id)
from demo
WHERE date >=dateadd(day,datediff(day,0,GetDate())-7,0)
GROUP BY date
但由于某些原因,我在得到这个错误“ phpmyadmin“
Error
SQL query: Documentation
select date, count(id)
from demo
WHERE date >=dateadd(day,datediff(day,0,GetDate())-7,0)
GROUP BY date LIMIT 0, 25
MySQL said: Documentation
#1582 - Incorrect parameter count in the call to native function 'datediff'
我找不到我做错了什么。
我认为这可能来自日期格式,所以我将它改为日期,但没有运气。
请指教。
这是MSSQL或MySQL? – Whencesoever
根据Mysql [DATEDIFF](https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_datediff)的文档,在传递3时只有两个参数参数,可能的重复[调用本地函数'DATEDIFF'时不正确的参数计数](http://stackoverflow.com/questions/23250555/incorrect-parameter-count-in-the-call-to-native-function- datediff) – hassan
你在'WHERE'子句中试过什么?你的目标是什么?根据你的榜样和预期的结果,你只需要简单的分组由DATE('date') –