始める前に、私はこの質問を問題の質問ではなく、より多くの議論として投稿したと言いたいです。
私のデータベースには、3つの列(ID、タイトル、日付)で言うニュース投稿があります。Id と title が自己説明である場合、日付は mktime() 値、つまり 1970 年 1 月 1 日から経過した秒数に格納されます。
今私がやりたいことは、そのように表示されるアーカイブリンクを構築することです
- 2009年7月
- 2009 年 6 月
- 2009 年 3 月
- 2009年2月
- 2008 年 12 月
投稿がなかった月は表示されませんのでご注意ください。
今、最初の考えとして、私は考えていました
- 当月の最終日から開始
- そして、現在の月の最初の日の値を取得します
- date >= First_Day_Seconds AND date <= Last_Day_Seconds の投稿に対して MySQL COUNT Query/mysql_num_rows を実行します
- 配列に値を表示または配置する
- 別のクエリを実行して、さらに値が見つかったかどうかを確認します WHERE date < First_Day_Seconds (行が見つからない場合は中断)
今、上記は私の頭の上にあるものです。しかし、このプロセスをスピードアップするためのアイデアがあれば、共有してください.
前もって、日付は mktime 形式である必要があります