mysql упорядочить по, сначала ноль, а после DESC - PullRequest
69 голосов
/ 16 февраля 2012

Как можно заказать DESC по полю, но сначала перечислить значения NULL?

Итак, у меня есть стол:

reuestId | offerId | offerTitle
1        | 1       | Alfa
NULL     | 2       | Beta
2        | 3       | Gamma

Я хочу выбрать их так, чтобы результаты были:

NULL | 2 | Beta
2    | 3 | Gamma
1    | 1 | Alfa

Ответы [ 2 ]

140 голосов
/ 16 февраля 2012

Попробуйте это:

ORDER BY [reuestId] IS NULL DESC, [reuestId] DESC

должно работать (для mySql)

26 голосов
/ 16 февраля 2012
SELECT *
FROM TableX
ORDER BY (requestId IS NOT NULL)
       , requestId DESC
...