我想寫一個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') –