← К оглавлению занятия

🐛 Типичные ошибки: Summary session 5

⚡ Топ-3 ошибки

  • Агрегат в WHERE вместо HAVING.
  • Забытая база данных northwind.
  • Неправильный регистр в строковых фильтрах.

Ошибка 1. WHERE вместо HAVING

-- Неправильно
SELECT category, COUNT(id)
FROM products
WHERE COUNT(id) >= 3
GROUP BY category;

-- Правильно
SELECT category, COUNT(id)
FROM products
GROUP BY category
HAVING COUNT(id) >= 3;

Ошибка 2. Не выбрана база данных

Не забывайте выполнять USE northwind; перед запросами к таблице products.

Ошибка 3. Регистр в LIKE

Для поиска подстроки без учёта регистра используйте LOWER(column) LIKE '%box%'.

Ошибка 4. Границы BETWEEN

BETWEEN 10 AND 20 включает 10 и 20. Это соответствует условию «от 10 до 20 включительно».

Ошибка 5. Путаница COUNT(*) и COUNT(column)

COUNT(*) считает все строки, COUNT(column) — только строки, где column не NULL.