1
私はuserCountに1日の開始から'xxxx-xx-xx 00:00:00'
を問い合わせ、この日の最後に'xxxx-xx-xx 23:59:59'
のようなスクリプトを持っています。特定の1日のデータを特定の日の範囲から選択する
USE db;
SELECT user
FROM db.user AS user
WHERE
user.payTime BETWEEN '2017-07-12 00:00:00' AND '2017-07-12 23:59:59'
GROUP BY user.username
だから今、私は2017-06-01
から2017-07-12
に日以内のユーザーのpayTimeを照会することができますか?
最初の事は私の心から出てきた日付範囲宣言されています。
SET CURRDATE = '2017-06-01';
SET ENDDATE = '2017-07-12';
とループにスクリプトを置くように:
WHILE CURRDATE < ENDDATE DO
USE db;
.......
WHERE
user.payTime BETWEEN 'CURRDATE 00:00:00' AND 'CURRDATE 23:59:59'
.......
SET CURRDATE = DATE_ADD(CURRDATE, INTERVAL 1 DAY)
END WHILE;
たぶん私は何かを見逃しているかもしれませんが、どうして 'BETWEEN' 2017-06-01 00:00:00 'AND' 2017-07-12 23:59:59'''d'c''d? – cwallenpoole
@cwallenpoole私は特定の日のデータを照会したいが、2つの日付の範囲は照会したくないので –
日付でグルーピングしてみましたか:https://stackoverflow.com/questions/6054144/how-can-i-group-日付 - 日付 - 時間 - 非 - 考慮時間 – cwallenpoole