1. 程式人生 > 其它 >mysql統計當前日期一週每天的資料

mysql統計當前日期一週每天的資料

技術標籤:sqlmysql

  1. 先統計當前日期一週七天的日期

    	select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) + 0 DAY) as weekday
    	UNION
    	select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 1 DAY)
    	UNION
    	select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 2 DAY)
    	UNION
    	select date_sub(curdate(),INTERVAL WEEKDAY(
    curdate()) - 3 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 4 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 5 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 6 DAY)
  2. 然後統計每天的數量

    SELECT
    	a.weekday,
    	COUNT(nm.id) count
    FROM
    	(
    		select
    date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 0 DAY) as weekday UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 1 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 2 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 3 DAY) UNION select
    date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 4 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 5 DAY) UNION select date_sub(curdate(),INTERVAL WEEKDAY(curdate()) - 6 DAY) ) as a LEFT JOIN need_medical as nm on nm.is_delete = 0 AND date_format(nm.appointment_date, '%Y-%m-%d')=a.weekday GROUP BY a.weekday