Сортировка нескольких полей с условием на SQL сервере - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть таблица с полями display (nvarchar) и sequence (int).

Select display,sequence from table 
order by sequence,display

То, что я хотел бы сделать, это если последовательность равна 0 или равна нулю, а затем сортировать по отображению, иначе сортировать по последовательности.

Ответы [ 2 ]

0 голосов
/ 14 апреля 2020

Спасибо всем. Это работает, но не уверен, что есть лучший способ.

select
    display
    ,sequence
from

table 
order by 
    case when sequence > 0  then sequence
    else
        0
    end
    ,display
0 голосов
/ 14 апреля 2020

Вам нужно case выражение:

order by (case when seq = 0 or seq is null then display else seq end)

Примечание. Предполагается, что seq & display имеют одинаковый тип.

...