TGViewer
SQL Ready | Базы Данных SQL Ready | Базы Данных @sql_ready · 17.5K subscribers
Post #1105 2.15K
NULLS FIRST / NULLS LAST — контролируем сортировку NULL значений!

Проблема: где окажутся NULL при сортировке? Например в PostgreSQL при ORDER BY ... DESC NULL окажутся в начале
SELECT name, salary
FROM employees
ORDER BY salary DESC;


Явно контролируем позицию NULL (Postgres / Oracle / SQLite). Так NULL всегда внизу и не попадут в топ зарплат:
SELECT name, salary
FROM employees
ORDER BY salary DESC NULLS LAST
LIMIT 10;


В обратном случае для возрастания:
ORDER BY hire_date ASC NULLS FIRST;


MySQL и SQL Server нативного NULLS FIRST / NULLS LAST не поддерживают — используйте обход:
-- MySQL
ORDER BY (salary IS NULL), salary DESC;

-- SQL Server
ORDER BY CASE WHEN salary IS NULL THEN 1 ELSE 0 END, salary DESC;


🔥 Так что, NULLS FIRST/LAST делает сортировку предсказуемой и удобной.

➡️ SQL Ready | #практика
  • ❤ 12
  • 👍 7
  • 🔥 5
  • 🤝 3
More from @sql_ready
  1. Oct 12, 2026Обновляйте несколько колонок одним подзапросом! Вместо нескольких одинаковых подзапросов:…
  2. Oct 9, 2026❤️ sqlite-postgres-cours — большой практический курс по базам данных! Материал ведёт от пе…
  3. Oct 8, 2026Почему UNIQUE допускает несколько NULL в PostgreSQL! Ограничение UNIQUE гарантирует уникал…
  4. Oct 7, 2026📂 Шпаргалка по паттернам распределённых систем! Например, Replication повышает доступност…
  5. Oct 6, 2026Проверяйте связи с учётом периода! В PostgreSQL 18 связь может учитывать ещё и период его…
  6. Oct 6, 2026👍 Устройство PostgreSQL — подробная документация на русском языке! Материалы посвящены не…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →