🖥 SQL-фишки — которые выведут (Junior / Middle / Senior) аналитиков на новый уровень:

Запросы в SQL бывают громоздкими (много условий в блоке where, много полей в блоке select), а отладка — сплошная головная боль. Сегодня разберем два простых трюка, которые позволят отлаживать и писать код гораздо быстрее:

1️⃣ Фишка №1 (WHERE 1=1 — комментируй фильтры без ошибок):

Условие 1=1 — это всегда “правда”.
Добавим в начало WHERE, и все условия дальше пишем через AND.
Закомментируем любое — синтаксис не сломается.

🔵 Рассмотри пример кода с фишкой:

SELECT
    order_id,
    amount
FROM orders
WHERE
    1=1
    AND amount > 1000  -- опечатка: amount, не mount
    AND order_date >= '2025-01-01'
    AND status = 'completed';

🔵 Вдруг нужно убрать условие “amount > 1000” — просто закомментируем:

SELECT
    order_id,
    amount
FROM orders
WHERE
    1=1
    -- AND amount > 1000  -- убрали, и всё ок
    AND order_date >= '2025-01-01'
    AND status = 'completed';

Запрос будет работать, а если бы не было условия 1=1, то так бы сделать не получилось.

2️⃣ Фишка №2 (Запятые слева перед названием полей в SELECT):

Фишка заключается в том, что ставить запятую нужно слева от каждого поля после первого, чтобы тоже было удобно комментировать код.

🔵 Рассмотри пример кода с фишкой:

SELECT
    order_id
  , customer_id
  , order_date
  , amount
FROM orders
WHERE 1=1
  AND order_date >= '2025-01-01';

🔵 Попробуем убрать customer_id:

SELECT
    order_id
    -- , customer_id  -- закомментировали, запятая ушла
  , order_date
  , amount
FROM orders
WHERE 1=1
  AND order_date >= '2025-01-01';

Всё хорошо — получаем результат без ошибок.

Итог:
WHERE 1=1 и запятые слева в SELECT — фишки, которые ускоряют работу с SQL в разы. Попробуйте внедрить к себе эти фишки и вы заметите, как начали быстрее писать код.

🍸 Если вы нашли пост для себя полезным, то накидывайте реакций, чтобы я понимал, что вам эта тема интересна!
❤️Поддержать канал бустами, чтобы у автора появился дополнительный функционал можно - здесь (это бесплатно и доступно с подпиской telegram premium)

❓ Используете эти приёмы? Или есть свои для отладки? Делитесь в комментариях!
✔️ Подпишитесь на канал, чтобы не пропустить следующие посты.

Сделал сайт - оцените:
🚬 Вопросы, обучение, консультации

@@dima_sqlit


Ссылки