mysql -- 按时间查询 今天、昨天、明天、上月....

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

昨天  
SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名)
<= 1

明天  
SELECT * FROM 表名 WHERE TO_DAYS( 时间字段名) - TO_DAYS( NOW( ) )  <= 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));

查询当前这周的数据

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;

查询当前月份的数据  
select name,submittime from
enterprise   where
date_format(submittime,‘%Y-%m‘)=date_format(now(),‘%Y-%m‘)

查询距离当前现在6个月的数据  
select name,submittime from enterprise where submittime between
date_sub(now(),interval 6 month) and
now();

查询上个月的数据  
select name,submittime from
enterprise   where
date_format(submittime,‘%Y-%m‘)=date_format(DATE_SUB(curdate(),
INTERVAL 1
MONTH),‘%Y-%m‘)  
select * from ` user ` where DATE_FORMAT(pudate, ‘ %Y%m ‘ ) =
DATE_FORMAT(CURDATE(), ‘ %Y%m ‘ )
;  
select * from user where
WEEKOFYEAR(FROM_UNIXTIME(pudate,‘%y-%m-%d‘)) =
WEEKOFYEAR(now())  
select
*   
from user
where MONTH (FROM_UNIXTIME(pudate, ‘ %y-%m-%d ‘ )) = MONTH
(now())  
select
*   
from [ user
]   
where YEAR (FROM_UNIXTIME(pudate, ‘ %y-%m-%d ‘ )) = YEAR
(now())  
and MONTH (FROM_UNIXTIME(pudate, ‘ %y-%m-%d ‘ )) = MONTH
(now())  
select
*   
from [ user
]   
where pudate between
上月最后一天  
and 下月第一天  
where date(regdate)  
=  
curdate();  
select  
*  
from  
test   where
year(regdate)=year(now())   and
month(regdate)=month(now())   and
day(regdate)=day(now())  
SELECT date( c_instime ) ,curdate(
)  
FROM `t_score`  
WHERE 1  
LIMIT 0 , 30

时间: 2024-10-31 10:04:43

mysql -- 按时间查询 今天、昨天、明天、上月....的相关文章

mysql根据时间查询前一天数据

MySql数据库如何根据时间查询前一天的数据?本文整理了几个解决方法,有需要的朋友参考下. 本节内容:用MySql怎么根据时间查询前一天的数据. 例1: 代码示例: select * from tt where f1=DATE_ADD(now(),INTERVAL -1 day) 例2: 代码示例: select * from tt where f1 between DATE_SUB(curdate(), INTERVAL 1 DAY) and current_date(); 例3,mysql时

mysql数据库时间查询

1.查询当前时间  年月日时分秒 mysql> select now(); +---------------------+ | now() | +---------------------+ | 2018-03-19 23:12:52 | +---------------------+ 2.查询当前时间 前三小时 的时间点 mysql> select subdate(now(),interval 3 hour); +--------------------------------+ | sub

mysql 根据时间查询 格式转换竟然要注意大小写,天坑

时间需要转换格式在查询 查询2018年12月24日以后的记录 SELECT id FROM t_client_info WHERE DATE_FORMAT(visit_datetime,'%Y-%m-%d')>='2018-12-24'; 查询24号之后25号之前的数据 SELECT id FROM t_client_info WHERE DATE_FORMAT(visit_datetime,'%Y-%m-%d')>='2018-12-24' AND DATE_FORMAT(visit_dat

mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法(摘录)

mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法分析总结: 话说有一文章表article,存储文章的添加文章的时间是add_time字段,该字段为int(5)类型的,现需要查询今天添加的文章总数并且按照时间从大到小排序,则查询语句如下: select * from `article` where date_format(from_UNIXTIME(`add_time`),'%Y-%m-%d') = date_format(now(),'%Y-%m-%d'); 或者: selec

mysql查询今天,昨天,近7天,近30天,本月,上一月数据

近期项目中用到了查询当月数据记录的功能,最初的想法是在逻辑业务里构造好时间段进行查询,当写sql语句时感觉挺麻烦.所以就到网上搜索了一下,看看是不是能有简单的方法.果然.网络资源非常强大.以下结合我的项目表来把mysql查询今天,昨天,近7天,近30天,本月,上一月数据的sql语句记录一下. 有一张ad_proTrack_t 表.追踪产品时间字段为crt_time 查询今天的信息记录: select * from ad_proTrack_t where to_days(crt_time) = t

板邓:mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法

mysql查询今天,昨天,近7天,近30天,本月,上一月数据的方法分析总结: 话说有一文章表article,存储文章的添加文章的时间是add_time字段,该字段为int(5)类型的,现需要查询今天添加的文章总数并且按照时间从大到小排序,则查询语句如下: select * from `article` where date_format(from_UNIXTIME(`add_time`),’%Y-%m-%d’) = date_format(now(),’%Y-%m-%d’); 或者: selec

根据当前时间查询上月26号的日期 本月月25号的日期

--根据当前时间查询上月26号的日期SELECT CONVERT(varchar(10), CONVERT(varchar(8),dateadd(month,-1,getdate()),120)+'26' , 120)--根据当前时间查询本月月25号的日期SELECT CONVERT(varchar(10), CONVERT(varchar(8),dateadd(month,0,getdate()),120)+'25' , 120)

MySQL慢日志查询

MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志中.long_query_time的默认值为10,意思是运行10S以上的语句.默认情况下,Mysql数据库并不启动慢查询日志,需要我们手动来设置这个参数,当然,如果不是调优需要的话,一般不建议启动该参数,因为开启慢查询日志会或多或少带来一定的性能影响.慢查询日志支持将日志记录写入文件,也支持将日志记录写入数据库表.

MySQL知识树-查询语句

在日常的web应用开发过程中,一定会涉及到数据库方面的操作,其中查询又是占绝大部分的.我们不仅要会写查询,最好能系统的学习下与查询相关的知识点,这篇文章我们就来一起看看MySQL查询知识相关的树是什么样的. MySQL查询知识树: 一.查询的种类 二.查询的原理 三.查询的应用场景 四.查询的效率比较 五.如何进行查询优化 六.与查询相关的知识扩展 一.查询的种类 MySQL的查询可以分为内连接查询.左连接查询.右连接查询.联合查询. ①内连接是通过关联表中共有的列来匹配出记录,查询出来的数据是