Postgresql Специальный заказ BY - PullRequest
1 голос
/ 20 октября 2010

Мне нужно использовать ORDER BY для таблицы, но держать некоторые специальные строки сверху. Строки, которые имеют name='developer', например.

Ответы [ 3 ]

4 голосов
/ 20 октября 2010
ORDER BY CASE WHEN name = 'developer' THEN '0' ELSE name END
2 голосов
/ 22 декабря 2010

Вы также можете сделать ORDER BY без использования CASE:

ORDER BY 
  name = 'developer' DESC,
  name ASC;
1 голос
/ 20 октября 2010

Нечто подобное может сработать для вас.

SELECT * FROM table ORDER BY CASE WHEN name = 'developer' THEN 0 ELSE 1 END, name
...