0

年を表示する日時を表示するクエリを考え出そうと頭を悩ませてきました->月->カウント(その年の月)。

例: 次のように結果を表示したい:

Year    Mth     #
2012    Apr     595
2012    Mar     27
2011    Oct     1
etc...

私のテーブルは次のようになります。

create table `log` (
    `datetime` datetime ,
    `username` varchar (75),
    `clientaddr` varchar (225),
    `action` varchar (75),
    `details` varchar (300)
);

上記のように、ログ テーブルにすべてのレコードを表示したいと考えています。誰にも提案はありますか?同じことを行うアルゴリズムを自由に共有してください。

前もって感謝します :)

4

2 に答える 2

5

どうですか:

select year(datetime) as year, monthname(datetime) as month, count(*) from log group by year, month order by year, month;
于 2012-04-12T15:25:48.680 に答える
1
SELECT YEAR(`DateTime`) AS Year, MONTH(`DateTime`) as Month, COUNT(*) AS Count
FROM Log
GROUP BY YEAR(`DateTime`), MONTHNAME(`DateTime`)
ORDER BY Year DESC, Month DESC

DateTime を列名として使用することはお勧めしません。

于 2012-04-12T15:28:04.633 に答える