我有以下查询:
SELECT `date_created`, COUNT(`ID`) AS no_of_registration
FROM (
SELECT `id`,
DATE_SUB(DATE_ADD(MAKEDATE(from_unixtime(`created_on`,'%Y'), 7),
INTERVAL EXTRACT(WEEK FROM from_unixtime(`created_on`,'%Y-%m-%d')) WEEK),
INTERVAL WEEKDAY(DATE_ADD(MAKEDATE(from_unixtime(`created_on`,'%Y'), 1),
INTERVAL EXTRACT(WEEK FROM from_unixtime(`created_on`,'%Y-%m-%d')) WEEK)) -1 DAY)
as `date_created`
FROM `users` WHERE 1) x
GROUP BY `date_created`
HAVING `date_created` BETWEEN CURDATE() - INTERVAL 12 WEEK AND CURDATE()
使用今天的日期显示过去12周的数据。但是,它仅显示date_created
作为星期一日期。我想把每周都展示为日期范围。示例:2017-11-27 - 2017-12-04
。
谢谢你的帮助。 -Eli
答案 0 :(得分:0)
你好我不确定我是否理解你的问题,但如果你只想要星期一,你可以添加你的where语句:
AND DAYOFWEEK(a.Date)=2