首页 > 数据库技术 > 详细

mysql数据库要按当天、昨天、前七日、近三十天、季度、年查询

时间:2016-01-13 00:31:30      阅读:354      评论:0      收藏:0      [点我收藏+]

今天花了些时间整理了下MySQL中分别查找当天、昨天、近一周、近一个月等等时间段数据的代码

1、查询今天数据的语句

select * frim  表名  where to_days(时间字段名)==to_days(now());
select now();//获得当前时间 格式:2016-01-12 23:21:33
select curdate();//获得当前时间 格式: 2016-01-12
select curtime();//获得当前时间 格式:23:19:43

2、查询昨天数据的语句

select * from 表名 where to_days(now())-to_days(时间字段名)=1;

3、查询七天语句

select * from 表名 where  date_sub(curdate(),interval 7 day)<=date(时间字段名);
或者  select * from 表名 where  时间字段名>=date_sub(curdate(),interval 7 day);

4、查询近一个月的语句

select * from 表名 where  date_sub(curdate(),interval 1 month)<=date(时间字段名);
或者 select * from 表名 where  时间字段>=date_sub(curdate(),interval 1 month);

5、查询本季度数据

select * from 表名 where QUARTER(时间字段名)=QUARTER(now());
QUARTER(date);//返回的一年日期,取值范围为1至4季度。

6、查询上季度数据

select * from 表名 where  QUARTER(时间字段名)=QUARTER(DATE_SUB(now(),interval 1 QUARTER));

6、查询本年的数据

select * from 表名 where YEAR(时间字段名)=YEAR(NOW());

7、查询去年数据

select * from 表名 where  year(时间字段名)=year(date_sub(now(),interval 1 year)); 

8、查询当前这一周的数据

SELECT name,时间字段名 FROM 表名 WHERE  YEARWEEK(date_format(submittime,%Y-%m-%d)) = YEARWEEK(now());

9、查询上周的数据

SELECT name,时间字段名 FROM 表名 WHERE  YEARWEEK(date_format(submittime,%Y-%m-%d)) = YEARWEEK(now())-1;

10、查询当前月份的数据

select name,时间字段名 from 表名   where  date_format(submittime,%Y-%m)=date_format(now(),%Y-%m)

11、查询上个月的数据

select name,时间字段名 from 表名   where  date_format(时间字段名,%Y-%m)=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),%Y-%m);
DATE_FORMAT();//函数用于以不同的格式显示日期/时间数据。

12、MySQL中日期时间函数大全

DAYOFWEEK(date)    
  返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)
      mysql> select DAYOFWEEK(1998-02-03); -> 3
WEEKDAY(date)
  返回日期date是星期几(0=星期一,1=星期二,……6= 星期天)
      mysql> select WEEKDAY(1997-10-04 22:23:00); -> 5
      mysql> select WEEKDAY(1997-11-05); -> 2
DAYOFMONTH(date)
  返回date是一月中的第几日(在1到31范围内)
      mysql> select DAYOFMONTH(1998-02-03); -> 3
DAYOFYEAR(date)
  返回date是一年中的第几日(在1到366范围内)
      mysql> select DAYOFYEAR(1998-02-03); -> 34
MONTH(date)
  返回date中的月份数值
      mysql> select MONTH(1998-02-03); ->2

 

mysql数据库要按当天、昨天、前七日、近三十天、季度、年查询

原文:http://www.cnblogs.com/ww-ervin-72/p/5126020.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!