← Все вопросы

Как писать комментарии в SQL?

Задан 9 дней назад214 просмотров2 ответа
2

Накопилось несколько больших запросов с кучей JOIN-ов, через неделю сам не помню, что они делают. Хочу добавить пояснения прямо в коде. Как в SQL пишутся комментарии — есть ли однострочные и многострочные, как в обычных языках? И не сломают ли они запрос?

2 ответа

5
✓ Принятый ответ — помог автору

Да, комментарии в SQL есть, и они бывают двух видов — как в большинстве языков. На выполнение запроса они никак не влияют: парсер их просто игнорирует.

Однострочный комментарий — два дефиса --, всё до конца строки игнорируется:

SELECT id, name
FROM users        -- берём только активных
WHERE active = true;

Многострочный комментарий/* ... */, может занимать несколько строк:

/*
  Отчёт по заказам за месяц.
  Автор: Иван, обновлено 2026-06.
  Осторожно: тяжёлый запрос, не гонять на проде в часы пик.
*/
SELECT customer_id, SUM(total)
FROM orders
GROUP BY customer_id;

Эти два синтаксиса работают во всех основных СУБД — PostgreSQL, MySQL, SQLite, SQL Server.

Где комментарии особенно полезны:

  • пояснить зачем нужен хитрый JOIN или подзапрос (не что делает строка, а почему она тут);
  • временно «выключить» кусок запроса, не удаляя его;
  • оставить заметку о производительности или о граблях.

Пара нюансов, о которых стоит знать:

  • В MySQL есть третий вид однострочного комментария — # до конца строки. Это нестандартно, в других СУБД не сработает, лучше держитесь --.
  • В некоторых консольных клиентах и инструментах миграций строки вида /*! ... */ (MySQL) или --+ трактуются как директивы-подсказки оптимизатору, а не как обычный комментарий. На практике редко мешает, но если увидите странное поведение — вот вероятная причина.

Итог: для коротких пометок — --, для блоков и шапок запросов — /* ... */. Комментируйте «почему», а не «что» — будущий вы скажет спасибо.

4

Маленькое предупреждение про --: после двух дефисов обязательно ставьте пробел, особенно если рядом идёт что-то вроде --5. Некоторые парсеры это переварят, но привычка -- текст надёжнее и читается лучше.

И не оставляйте закомментированный «мёртвый» код надолго — через месяц никто не вспомнит, рабочий он был или сломанный. Для этого есть система контроля версий, а комментарии лучше держать содержательными.

Ваш ответ

Войдите, чтобы ответить на вопрос.
Поддержать проект