回答
SQL服務器:
SELECT [activity_dt], count(*)
FROM table1
GROUP BY DATEPART(day, [activity_dt]), DATEPART(hour, [activity_dt]);
甲骨文:
SELECT [activity_dt], count(*)
FROM table1
GROUP BY TO_CHAR(activity_dt, 'DD'), TO_CHAR(activity_dt, 'hh');
的MySQL:
SELECT [activity_dt], count(*)
FROM table1
GROUP BY hour(activity_dt) , day(activity_dt)
SELECT [activity_dt], COUNT(*) as [Count]
FROM
(SELECT dateadd(hh, datediff(hh, '20010101', [activity_dt]), '20010101') as [activity_dt]
FROM table) abc
GROUP BY [activity_dt]
使用MySQL,我通常這樣做的:
SELECT count(id), ...
FROM quote_data
GROUP BY date_format(your_date_column, '%Y%m%d%H')
order by your_date_column desc;
或者在同樣的想法,如果你需要輸出的日期/時間:如果您在日期列指定索引
SELECT count(id) , date_format(your_date_column, '%Y-%m-%d %H') as my_date
FROM your_table
GROUP BY my_date
order by your_date_column desc;
中,MySQL應該能夠用它來加快東西小。
我不得不用%H替換%h,用0-24排序對我來說效果更好,而不是0-12和0-12。 – Melvin 2016-04-03 09:24:44
@Melvin你說得對,我糾正了我的答案。 – Simon 2016-04-03 11:28:07
只是關於索引使用情況的說明。雖然date_format確實允許使用索引,但只有在使用特定/有限集合函數時,纔會優化使用索引(鬆散索引掃描)。通常,只有MIN()和MAX()應用於單列才允許進行索引掃描,並且只要指定DISTINCT關鍵字,也可以使用其他聚合。來源:[鏈接](http://dev.mysql.com/doc/refman/5.7/en/group-by-optimization.html) – JavoSN 2016-06-26 19:21:28
- 1. 組合日期和時間
- 2. 日期之間的日期與時間
- 3. 分離的日期和時間的日期時間戳
- 4. 將日期和時間轉換爲GMT + 10日期和時間
- 5. SAS日期和日期時間問題
- 6. mysql日期和日期時間問題
- 7. javascript日期和JSON日期時間
- 8. 比較日期和日期時間
- 9. django在日期時間的日期排序/從日期時間提取日期
- 10. 如何從日期時間戳的時間和日期在PHP
- 11. 結合使用日期時間的日期和時間列
- 12. 轉換日期時間來寫的日期和時間用JavaScript
- 13. 日期時間
- 14. 日期時間
- 15. Moment.js檢查日期時間是否在一組日期和時間之間
- 16. 從一個日期時間和另一個日期時間的合併日期
- 17. 時間元組到日期時間
- 18. 時間戳,日期,時間或日期時間是哪個?
- 19. MySQL日期和時間間隔 - 日期間的記錄
- 20. 加入包含日期和時間信息爲日期時間
- 21. 服務器日期時間和客戶端日期時間
- 22. 檢查日期時間輸入和數據庫日期時間
- 23. 從系統中拆分日期和時間::日期時間
- 24. 將日期時間分割成日期和時間值
- 25. 日期時間選擇器 - 設置開始日期和時間
- 26. 添加日期參數和時間參數單日期時間
- 27. 日期時間(日期和時間)與數據註釋驗證
- 28. ColdFusion - 捕獲登錄日期/時間和註銷日期/時間
- 29. 使用日期和時間填充日期時間
- 30. MySQL日期時間和當前日期時間函數
你用什麼rdbms? – 2013-02-13 03:38:08