在我的MySQL数据库中,我有包含插入日期的记录(作为datetime
类型的列之一)
除了一些where
子句约束之外,我想选择给定日期之上的所有记录(从给定日期到现在)以及最接近给定日期的一条记录。
任何想法如何以有效的方式使用MySQL实现这一点?
我想过使用计数和排名,但我认为效率非常低。
答案 0 :(得分:2)
也许是这样的?
(SELECT * FROM mytable WHERE mydate >= xxx)
UNION
(SELECT * FROM mytable WHERE mydate < xxx ORDER BY mydate DESC LIMIT 1)