0
我有一个日期类型列以及其他东西的表,并且我试图根据给定的日期参数查询表的项目,并返回10个项目之前和10在给定的日期参数之后的项目。SQL获取日期前后的项
按日期列降序排列并选择10个小于或等于(< =)的项目将完成一半的目标,但是有没有一种方法可以完成前10项和后10项单个查询?
我有一个日期类型列以及其他东西的表,并且我试图根据给定的日期参数查询表的项目,并返回10个项目之前和10在给定的日期参数之后的项目。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有关 – Strawberry
您应该可以使用子查询来实现此目的。 – Cyclonecode
简单。请参阅UNION – Strawberry