写个SQL查询距离当前日期最近的12条数据
73浏览 · 2024-03-21 11:43:30
假设你要[查询](https://geek.csdn.net/educolumn/52858a23fd7979423d613db72f18dba0?spm=1055.2569.3001.10083)的表名为`my_table`,包含一个名为`date_column`的日期列,以下是一种[查询](https://geek.csdn.net/educolumn/52858a23fd7979423d613db72f18dba0?spm=1055.2569.3001.10083)距离当前日期最近的12条数据的SQL语句:
[select](https://geek.csdn.net/educolumn/5d806cb20badd69e4fa54cbe0d705676?spm=1055.2569.3001.10083) *
FROM my_table
WHERE date_column <= CURDATE()
[ord](https://geek.csdn.net/educolumn/514d2828312f543fa61b516e089a3f41?spm=1055.2569.3001.10083)ER BY date_column DESC
LIMIT 12;
这个[查询](https://geek.csdn.net/educolumn/52858a23fd7979423d613db72f18dba0?spm=1055.2569.3001.10083)首先会筛选出日期小于或等于当前日期的所有数据,然后按照日期列倒序排列,最后限制结果集只包含前12条数据。这样就能得到距离当前日期最近的12条数据。
相关问题
以下是查询距离当前日期最近的SQL语句示例:
SELECT *
FROM your_table
WHERE date_column = (
SELECT MIN(date_column)
FROM your_table
WHERE date_column >= SYSDATE
其中,`your_table`是你要查询数据的表名,`date_column`是你要筛选的日期列名。这条SQL语句会返回`date_column`最接近当前日期的一条数据。如果有多条数据都符合条件,它会返回其中`date_column`最小的一条数据。
可以使用以下 SQL 语句查询小于某个时间最近的一条数据:
SELECT * FROM 表名 WHERE 时间列 < 某个时间 ORDER BY 时间列 DESC LIMIT 1;
其中,表名和时间列需要替换成相应的表名和时间列名称,某个时间需要替换成具体的时间点。ORDER BY 时间列 DESC 用于