レコードが含まれていない場合でも、mysql を使用して過去 1 週間のすべての日付を取得する方法はありますか?
これで、次のようなクエリが作成されました (作業時間などを監視できるアプリの場合)。
SELECT user_id, SUM( TIME_TO_SEC( checkout_time ) - TIME_TO_SEC( checkin_time ) ) AS total_time, DATE( checkout_time ) AS checkout_day
FROM timetable
WHERE task_id = 19
AND checkout_time >= ( DATE_SUB( CURDATE( ) , INTERVAL 1 WEEK ) )
GROUP BY checkout_day, user_id
ORDER BY checkout_day ASC
これは非常にうまく機能しますが、ユーザーが実際に出勤した日付のみを取得します (これは実際に重要な日です)。しかし、その 1 週間の間隔ですべての日付を取得する方法があれば、本当に素晴らしいことです。次のような場合:
DATE(INTERVAL 1 WEEK) as dates
次を取得します。
|dates
------------
|2012-07-15
|2012-07-16
|2012-07-17
|2012-07-18
|2012-07-19
|2012-07-20
通常 SQL を使用する目的ではないかもしれませんが、誰かが方法を知っているなら、あなたは私の一日を作るでしょう.