Задать вопрос
@indefpro
Начинающий прогер

Как сделать сортировку в postgresql?

Нужно сделать такую сортировку:
1. По полю A нужно отсортировать время в формате unix timestamp. Сортировать нужно по убыванию, но только те значения которые подойдут по условию A > currentDate.
2 .По полю B нужно отсортировать время в формате unix timestamp. Сортировать нужно по убыванию, но только те значения которые подойдут по условиюB > currentDate.
3. Поле C должно быть отсортировано по возрастанию, сразу после поля B. То есть:
-----A-----  -------B---- C
08.11.2017 9:00 08.11.2017 9:40 0
08.11.2017 8:00 08.11.2017 9:30 0
08.11.2017 7:00 08.11.2017 9:00 0
08.10.2013 1:00 08.11.2017 8:00 0
08.08.2017 2:00 08.11.2017 9:00 35
08.11.2015 3:00 08.11.2017 9:00 11

Как это сделать? Никак не могу отсортировать поле timestamp с условием. Без условия сортируется хорошо.
  • Вопрос задан
  • 1308 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
Постгри вполне себе поддерживает выражения в ORDER https://www.postgresql.org/docs/8.3/static/queries... и условные операторы https://www.postgresql.org/docs/9.4/static/functio... комбинируй

Пример sqlfiddle.com/#!17/54321/4
Ответ написан
Комментировать
@Coffin
Ну так сделай выборку
где A > текущая дата и B > текущая дата
сортировать A ASC, B ASC, B ASC

ты наверное пытаешься условие в сортировку запихнуть ?
Ответ написан
Ваш ответ на вопрос

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

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