特定のIDを持つ列を含む1日あたりのテーブルからすべての行をカウントし、UNIXタイムスタンプ列に基づいて週ごとの値にグループ化するクエリを作成するために、しばらくの間試みてきました。3,700 万行の中規模のデータセットがあり、次の種類のクエリを実行しようとしています。
SELECT DATE(timestamp), COUNT(*) FROM `table` WHERE ( date(timestamp)
between "YYYY-MM-DD" and "YYYY-MM-DD" and column_group_id=X )
group by week(date(startdate))
私は奇妙な結果を得ていますが、クエリはカウントを正しくグループ化していませんが、結果のカウント列に大きすぎる値を示しています (非常に小さな特定のデータセットをクエリして、値のエラーを確認しました)。
代わりにグループ化date(startdate)
すると、行数は 1 日単位で一致しますが、これらの 1 日あたりの行数を 1 週間あたりの量に結合したいと考えています。これはどのように可能でしょうか?データは次の形式で必要です。
2006-01-01 | 5
2006-01-08 | 10
日のタイムスタンプが最初の列で、2 番目が 1 週間あたりの行数になります。