MYSQL查询时间范围内的数据示例代码
MYSQL查询时间范围内的数据
其中,table_name 是要查询的表名,date_column 是日期字段的列名。
一周
SELECT * FROM table_name WHERE date_column BETWEEN DATE_SUB(CURDATE(), INTERVAL 1 WEEK) AND CURDATE();
一个月
SELECT * FROM table_name WHERE date_column BETWEEN DATE_SUB(CURDATE(), INTERVAL 1 MONTH) AND CURDATE();
MySql查询某个时间段内的数据(前一周、前三个月、前一年等)
1、使用函数DATE_SUB
DATE_SUB函数在当前时间减去一定的时间
DATE_SUB(date,INTERVAL expr unit)
date:合法日期,可以是当前时间now()
expr:希望减去的时间,整数
unit:减去时间的单位,如day,week,month,year
实例:
u_user表

(1)、前一周的数据
当前时间:

sql:
select * from u_user where u_create_time > DATE_SUB(NOW(),INTERVAL 7 day);
结果:

另一种sql写法:
select * from u_user where u_create_time > DATE_SUB(NOW(),INTERVAL 1 WEEK);
(2)、前三个月的数据
sql:
select * from u_user where u_create_time > DATE_SUB(NOW(),INTERVAL 3 MONTH);
结果:

(3)、前一年的数据
sql:
select * from u_user where u_create_time > DATE_SUB(NOW(),INTERVAL 1 YEAR);
结果:

2、使用函数DATE_ADD
DATE_ADD函数在当前时间加上一定的时间
DATE_ADD(date,INTERVAL expr unitda
date:合法日期,可以是当前时间now(),也可以是表中的时间字段
expr:希望加上的时间,整数
unit:加上时间的单位,如day,week,month,year
实例:
(1)、前一周的数据
sql:
select * from u_user where DATE_ADD(u_create_time,INTERVAL 7 DAY) > NOW();
结果:

(2)、前三个月的数据
sql:
select * from u_user where DATE_ADD(u_create_time,INTERVAL 3 MONTH) > NOW();
结果:

(3)、前一年的数据
sql:
select * from u_user where DATE_ADD(u_create_time,INTERVAL 1 YEAR) > NOW();
结果:

到此这篇关于MYSQL查询时间范围内的数据的文章就介绍到这了,更多相关mysql查询时间范围内数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
MySQL中非常强大而少为认知的14个sql查询实用技巧,你知道几个?
本文介绍了MySQL的14个少为认知,却非常强大的sql查询实用技巧,涵盖分组拼接、字符串处理、时间函数、数据插入、锁机制、表结构查看、备份复制及性能优化等场景,帮助提升数据库操作效率2025-10-10
mysql 8.0 找不到my.ini配置文件以及报sql_mode=only_full_group
MySQL5.7.5及以上版本启用ONLY_FULL_GROUP_BYSQL模式可能导致的问题,本文就来介绍一下找不到my.ini配置文件的解决方法,感兴趣的可以了解一下2024-08-08


最新评论