mysql - SQL 获取日期之前和之后的项目

标签 mysql sql

我有一个包含日期类型列的表,我正在尝试根据给定的日期参数查询表中的项目,并返回日期参数之前的 10 个项目和日期参数之后的 10 个项目给出。

按降序对日期列进行排序并选择小于或等于 (<=) 的 10 个项目将完成一半的目标,但是有没有一种方法可以在单个查询?

最佳答案

select * from
(
  select top 10 *
  from a_table
  where a_date < '2010-01-01'
  order by a_date desc

  union

  select top 10 *
  from a_table
  where a_date >= '2010-01-01'
  order by a_date asc
) t
order by t.a_date

关于mysql - SQL 获取日期之前和之后的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40456811/

相关文章:

python - Python 中的 Wufoo API 在特定时间后按日期时间排序不起作用

mysql - 在 mysql 中定义分隔符

mysql - Openshift nodejs mysql 查询崩溃

mysql - 寻求一种快速更新包含重复值的记录的方法

Mysql:插入性能 INNODB vs MYISAM

MySql 不带全文的复数搜索

sql - 多个字符与 LIKE 子句匹配

c# - 用于从不同表中检索的 SQL 语法?

mysql - 需要通过多个字段搜索的技巧[mysql优化]

c# - 特定客户的最后订单记录 - SQL