mysql查询技巧
# mysql 查询当天、昨天、本周、上周、本月、上月、今年、去年数据
# mysql 查询今天、昨天、7 天、近 30 天、本月、上一月 数据
今天 select * from 表名 where to_days (时间字段名) = to_days (now ());
昨天 SELECT * FROM 表名 WHERE TO_DAYS (NOW () ) - TO_DAYS ( 时间字段名) = 1
近 7 天 SELECT * FROM 表名 where DATE_SUB (CURDATE (), INTERVAL 7 DAY) <= date (时间字段名)
查询当前这周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK (date_format (submittime,’% Y-% m-% d’)) = YEARWEEK (now ());
查询上周的数据
SELECT name,submittime FROM enterprise WHERE YEARWEEK (date_format (submittime,’% Y-% m-% d’)) = YEARWEEK (now ())-1;
近 30 天 SELECT * FROM 表名 where DATE_SUB (CURDATE (), INTERVAL 30 DAY) <= date (时间字段名) 本月 SELECT * FROM 表名 WHERE DATE_FORMAT ( 时间字段名,‘% Y% m’ ) = DATE_FORMAT ( CURDATE ( ) , ‘% Y% m’ )
上一月 SELECT * FROM 表名 WHERE PERIOD_DIFF (date_format ( now () , ‘% Y% m’ ) , date_format ( 时间字段名,‘% Y% m’ ) ) =1
查询距离当前现在 6 个月的数据
select name,submittime from enterprise where submittime between date_sub (now (),interval 6 month) and now (); #查询本季度数据 select * from ht_invoice_information
where QUARTER(create_date)=QUARTER(now());
查询上季度数据 select * from ht_invoice_information
where QUARTER(create_date)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));
查询本年数据 select * from ht_invoice_information
where YEAR(create_date)=YEAR(NOW());
查询上年数据 select * from ht_invoice_information
where year(create_date)=year(date_sub(now(),interval 1 year));
# 关于我
Brath 是一个热爱技术的 Java 程序猿,公众号「InterviewCoder」定期分享有趣有料的精品原创文章!
非常感谢各位人才能看到这里,原创不易,文章如果有帮助可以关注、点赞、分享或评论,这都是对我的莫大支持!