1

私は次のような日付の配列を持っています

array
1 => string '2012-02-27' (length=10)
2 => string '2012-03-02' (length=10)
59 => string '2012-03-05' (length=10)

等々。これらの日付は、人々が何かに応募した日を表します。たとえば、2 月 27 日には 3 人が応募し、3 月 1 日には 2 人が応募しました。

私がやりたいことは、5 人までが申請書を提出し2012-02-26た週を示すテーブルを作成することです。2012-03-03左側の列のタイトルは にWeeksなり、右側の列のタイトルは になります# of applications received

私はすでに日ごとにテーブルを設定していますが、数週間も役に立ちます. 週のリストについて話している投稿を見て、それを使用しようとしましたが、うまくいきませんでした。

より具体的には、日付の配列を取得して週ごとに分割し、その情報をテーブルに入れるにはどうすればよいですか?

4

2 に答える 2

0

使用しているデータベース エンジンを指定しませんでしたが、ほとんどのデータベースには「年の週」という日付形式フィールドがあるため、SELECT COUNT, YEAR(date), WEEKOFYEAR(date) FROM stuff GROUP BY YEAR(date), WEEKOFYEAR(date).

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_weekofyear

于 2012-05-15T19:15:04.520 に答える
0

これは、DB ではなく、おそらく php で行う必要があります。

1) convert dates to epoch (seconds) with strtotime()
2) sort array by (numeric now) date with asort()
3) loop through the sorted now array from start date to end date and add the values.

もちろん、データベースを使えばもっと簡単にできます。

于 2012-05-15T19:15:23.640 に答える