Можно ли упорядочить таблицу базы данных так, чтобы значения NULL появлялись внизу? - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть таблица базы данных под названием «Клиенты», например:

Sl     Name    Profession
1      ABC     Doctor
2      QWE     Engineer
3      ERT     null
4      DEF     Doctor
5      JGJ     null

Я хочу заказать эту таблицу, так как все имена с профессиями указаны в начале, а имена без профессии (пусто) внизу.Примерно так:

Sl     Name    Profession
1      ABC     Doctor
2      QWE     Engineer
4      DEF     Doctor
5      JGJ     null
3      ERT     null

Есть ли какой-нибудь запрос для этого?Заранее спасибо ..

Ответы [ 2 ]

0 голосов
/ 07 февраля 2019

использование order by

select * from table_name
order by case when Profession is not null then 1 else 2 end  

НЕТ движок БД не обеспечивает порядок строк без использования порядка

0 голосов
/ 07 февраля 2019

NULL s в MySQL (и большинстве разновидностей SQL) сортируются по умолчанию первыми, а не последними.Один общий способ принудительного ввода значений NULL - использование выражения CASE или IF:

SELECT
    Sl, Name, Profession
FROM yourTable
ORDER BY
    IF(Profession IS NOT NULL, 0, 1),
    Sl;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...