Можно ли упорядочить таблицу базы данных так, чтобы значения NULL появлялись внизу?

0

У меня есть таблица базы данных под названием "Клиенты", как это:

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

Есть ли запрос, чтобы сделать это? Заранее спасибо..

  • 1
    В таблицах SQL есть un-ordered sets и простой ответ на ваш вопрос - «нет». Чтобы убедиться, что результат запроса находится в желаемом порядке, необходимо использовать пункт order by .
  • 0
    @Used_By_Already Это не то, о чем этот вопрос.
Показать ещё 3 комментария
Теги:
database

2 ответа

2

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

SELECT
    Sl, Name, Profession
FROM yourTable
ORDER BY
    IF(Profession IS NOT NULL, 0, 1),
    Sl;
  • 0
    Я хочу заказать таблицу на основе столбца 'Sl', но нулевые значения должны прийти наконец. Возможно ли это сделать?
  • 0
    Да, просто добавьте второй уровень сортировки с использованием столбца Sl после размещения пустых значений внизу.
Показать ещё 1 комментарий
0

использовать order by

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

НИКАКОЙ двигатель БД не предоставит вам строки заказа без использования

Ещё вопросы

Сообщество Overcoder
Наверх
Меню