Выбор ответа Junior SELECT и фильтрация обновлено

Где окажутся NULL при сортировке

Вопрос

Где окажутся строки с email IS NULL при ORDER BY email (по возрастанию) в PostgreSQL?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: В конце результата. PostgreSQL считает NULL больше любого значения: при ASC они идут в конце, при DESC в начале.

Варианты ответа

  1. В начале результата
  2. Будут исключены из результата
  3. В случайном месте
  4. В конце результатаправильный ответ

Разбор

PostgreSQL считает NULL больше любого значения: при ASC они идут в конце, при DESC в начале. Поменять можно явно: ORDER BY email NULLS FIRST. Сортировка никогда не выкидывает строки. В других СУБД поведение может отличаться (в MySQL NULL при ASC идут первыми), поэтому на собесе стоит уточнить СУБД.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.