mysqlsql时间查询

Posted 是馄饨呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysqlsql时间查询相关的知识,希望对你有一定的参考价值。

查询当天数据
select * from tab where FROM_UNIXTIME(fabutime, ‘%Y%m%d’) = 20121217;

mysql TO_DAYS(date) 函数
TO_DAYS(date)
给定一个日期date, 返回一个天数 (从年份0开始的天数 )。

mysql> SELECT TO_DAYS(950501);

-> 728779

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(时间字段名)
近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

#查询本季度数据
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));

以上是关于mysqlsql时间查询的主要内容,如果未能解决你的问题,请参考以下文章

深入学习MySQLSQL优化集群搭建

MySQLSQL常用基础语句总结

mysqlsql优化篇-关键字与索引

mysqlsql优化篇-关键字与索引

mysqlsql优化篇-关键字与索引

MySQL SQL介绍