7

すべてのブログ投稿を次の形式のメニューにまとめる効率的な方法を探しています。

2012年

  • 8月(6)
  • 9月(4)
  • 10月(2)

月は(明らかに)月を表し、括弧内の値はその月の投稿数を表します。クリックすると、その月、その年のすべての投稿が検索されます。

動的で、その月に投稿が作成されたときに11月を自動的に取得し、12月、2013年などに継続する必要があります...

私が持っているのは、各投稿のUNIXタイムスタンプだけです。無限のcomlex配列などを収集するために個別の関数を使用することは本当に避けたいと思います。

どんな助けでも大歓迎です。

4

1 に答える 1

13

あなたの質問から、月と年ごとにいくつかの要素をグループ化するためのクエリを考え出そうとしていると思います。以下はトリックを行う必要があります:

SELECT 
    YEAR(dateField) AS YEAR, 
    MONTH(dateField) AS MONTH,
    COUNT(*) AS TOTAL 
FROM table 
GROUP BY YEAR, MONTH

明らかに、「dateField」は日時/タイムスタンプ列の名前であり、「table」はテーブルの名前です。

GROUP BY句と集計関数(上記で使用したCOUNT(*)関数など)の詳細については、こちらをご覧ください。

于 2012-10-24T16:55:52.010 に答える