Задать вопрос
@Apxu

Как сделать необычную сортировку средствами SQL?

Добрый день всем!
Подскажите пожалуйста как сформировать sql чтобы получить следующий результат.

Например в базе есть следующие строки:
id | ...
1
2
...
99
100

Текущий ID например 88 и мне необходимо получить 50 элементов вперед и 50 элементов назад, НО если вперед меньше элементов(или назад - неважно), как в нашем случае(их впереди только 12), то мы должны получить назад 50+38(50-12)... Это как вариант, но можно и как-то другой способ предложить - главная задача, получить элементы которые рядом с заданым ID средствами SQL

Заранее благодарен!
  • Вопрос задан
  • 77 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 2
Melkij
@Melkij
DBA для вашего PostgreSQL?
(select ... from tablename where id < 88 order by id desc limit 50)
union all
(select ... from tablename where id > 88 order by id asc limit 50)
order by id
Ответ написан
Комментировать
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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