我有以下查询:
SELECT
DATE_FORMAT( DATE, '%M' ) AS MONTH,
DATE_FORMAT( DATE, '%y' ) AS YEAR,
DEVICE,
COUNT( * ) AS cnt
FROM users
GROUP BY YEAR, MONTH, DEVICE
我正在尝试按年和月进行排序,例如:
- 11 月 11 日
- 12 月 11 日
- 1 月 12 日
- ...
我该怎么做?
最佳答案
您可以使用MySQL YEAR
和 MONTH
在 GROUP
和 ORDER BY
子句中:
SELECT
DATE_FORMAT( DATE, '%M' ) AS MONTH,
DATE_FORMAT( DATE, '%y' ) AS YEAR,
DEVICE,
COUNT( * ) AS cnt
FROM users
GROUP BY YEAR(DATE), MONTH(DATE), DEVICE
ORDER BY YEAR(DATE), MONTH(DATE)
您也可以将 DATE_FORMAT( DATE, '%y' )
替换为 YEAR(DATE)
。
关于MySQL 如何对这个查询进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10632856/