@koliane

Как получить определенное кол-во строк до необходимой выборки?

Есть отсортированная выборка данных. Из этой выборки необходимо получить данные, которые соответствуют определенному условию (WHERE) + 5 записей (или другое число), идущих перед выборкой. Т.е. перед первым значением, соответствующем условию. Эти 5 записей необязательно должны соответствовать условию.

Пример: 649df457d2.jpg

Необходимо получить значения больше или равно 9. +5 строк идущих перед первым совпадением. Ответ должен быть следующим: 1, 2, 3, 4, 7, 9, 11, 14, 17. Как это можно реализовать в postgresql или mysql?
  • Вопрос задан
  • 94 просмотра
Решения вопроса 1
sqlfiddle.com/#!17/12350/11/0
select val from
(
    (select val from foo where val < 9 order by val desc limit 5)
    union
    (select val from foo where val >= 9 order by val asc)
) results
order by val asc
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы