MYSQL实现日期时间范围检索,日期时间查询,日期时间函数运算查询,查询一个时间段的数据,查询几年前或几年内的数据案例

在mysql可以给日期时间进行格式化,也可以按照日期时间范围进行查询,今天我总结了比较常用的几个范围查询的案例,再此分享一下:

如下例子中我会使用yyyy-MM-dd的日期格式,其他格式只要保证过滤条件的时间格式和数据库中的格式一致即可
按照时间过滤查询:
这个例子是查询2023/4/18号之前的数据,其中比较运算符可以根据需求替换。

SELECT
	* 
FROM
	table_name 
WHERE
	time_field < '2023/4/18';

按照时间范围过滤查询:
这个例子是查询2023/4/18日至今的数据,CURDATE() 函数用于获取当前日期。

SELECT
	* 
FROM
	table_name 
WHERE
	time_field BETWEEN '2023/4/18' 
	AND CURDATE();

按照时间过滤查询(日期时间函数运算):
这个例子是查询一年前的数据;
DATE_SUB() 函数用于在当前日期的基础上减去一年,得到距离当前时间一年前的日期,最后通过 WHERE 子句过滤出满足条件的数据。

SELECT
	* 
FROM
	my_table 
WHERE
	my_time_field <= DATE_SUB( CURDATE(), INTERVAL 1 YEAR );

按照时间范围过滤查询(日期时间函数运算):
这个例子是查询当前日期到明年这个时间的数据;
DATE_ADD() 函数用于在当前日期的基础上加上一年,得到距离当前时间一年后的日期,最后通过 WHERE 子句过滤出满足条件的数据。

SELECT
	* 
FROM
	table_name 
WHERE
	time_field BETWEEN CURDATE() 
	AND DATE_ADD( CURDATE(), INTERVAL 1 YEAR );

猜你喜欢

转载自blog.csdn.net/TangBoBoa/article/details/130228935