mysql查询最近7天的数据
mysql查询最近7天的数据:
1.(以当天为起点)
SELECT * FROM tb_equity e where DATE_SUB(CURDATE(), INTERVAL 6 DAY) <= date(createdate)
解释:DATE_SUB() 函数从日期减去指定的时间间隔。DATE_SUB(date,INTERVAL expr type),6表示截取的天数,最后的DAY表示按天来进行截取。
CURDATE()表示当前的系统时间(日期),另有CURTIME()表示当前的系统时间(时分秒)
date(表中的时间字段)
2.(以数据库最新的时间最为最近的一天)
SELECT * FROM tb_equity e where createdate > DATE_ADD((select createdate from tb_equity ORDER BY createdate DESC limit 1) ,INTERVAL -7 day) and (select createdate from tb_equity ORDER BY createdate DESC limit 1) >= createdate
3.sql查询表中的重复数据
select * from 表名 where 字段名 in (select 字段名 from 表名 group by 字段名 HAVING COUNT(*) > 1) order by 表名
4.sql查询最近7天的数据并且分组排序
SELECT device_data, SUM(device_alarm) device_alarm, SUM(device_confirmed) device_confiremed FROM gw_seven_alarm_data WHERE DATE_SUB(CURDATE(),INTERVAL 6 DAY) <= date(device_data) GROUP BY device_data