TGViewer
Базы данных (Data Base) Базы данных (Data Base) @database_info · 8.04K subscribers
Post #333 1.46K
Вопрос. Уровень: Junior
Есть категория «хитрых» вопросов, которые особенно любят задавать Junior-специалистам. Хотя чего уж там, любым специалистам.

Один из таких видов — вопросы по темам, на которые в повседневной жизни не обращаешь внимания и о которых не задумываешься. Просто делаешь на автомате, а на собеседовании это стреляет. Ну или на проекте, когда код начинает работать неправильно. Но это другая история…

Вопрос: Как оператор GROUP BY обрабатывает поля с NULL?

Если Вы не знаете ответ на этот вопрос, то после прочтения ответа обязательно проверьте свои проекты — может у вас где-то закралась ошибка?


Ответ
Учитывая, что NULL в SQL — просто отсутствие значения, то все значения NULL при группировке попадают в одну группу. Например, пусть есть таблица:

name | score
------|-------
Vasya | 5
Petya | 10
Petya | 3
Vasya | 4
NULL | 3
NULL | 8


Тогда запрос select sum(score) from table group by name даст:

name | score
------|-------
Vasya | 9
Petya | 13
NULL | 11

#db

👉 @database_info
  • 👍 16
More from @database_info
  1. Oct 13, 2026🧱 Антипаттерн: Ненормализованная схема в SQL Когда нужно «быстро запилить фичу», руки тян…
  2. Oct 11, 2026🎯 Мини-гайд: как НЕ спроектировать монстра вместо схемы БД Когда проект только начинается…
  3. Oct 10, 2026🚀 Подборка полезных IT каналов в Max Системное администрирование, DevOps 📌 https://max.r…
  4. Oct 8, 2026Без каких навыков не обойтись в ИТ прямо сейчас? Разбираемся с одной из самых популярных С…
  5. Oct 8, 2026Антипаттерн: «Одна таблица на всё» Когда бизнес-логика усложняется, а структура БД остаётс…
  6. Oct 6, 2026❌ Антипаттерн: Хранить даты и время в VARCHAR Встречали такое? CREATE TABLE orders ( id SE…
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 →