-1

我有一个查询在输入日期时间之前选择 5 行。

当输入日期时间接近表中最早的日期时,我没有得到 5 个结果,有时我得到 4、3、2、1 或没有。

有没有办法告诉它从表中的随机位置选择剩余的缺失结果(比如第一个查询有 3 个结果,所以我需要另外 2 个)?

4

2 回答 2

0

类似于:

select * from 
    (select 1 as resultOrder, *
    from    actualResults
    order by date desc
    limit 5
    union
    select  2 as resultOrder, *
    from    randomResults
    limit 5)
order by resultOrder
limit 5
于 2012-10-24T13:03:58.373 回答
0

假设您想要的结果早于 $date_selected,最新的优先,

...
ORDER BY
  date_add<$date_selected, date_add, 0) DESC,
  RANDOM()
LIMIT 5

读作:按日期选择所选日期之前的那些,然后选择所选日期之后的那些。

于 2012-10-24T13:07:32.097 回答