Wiki · Технологии разработки
SQL
SQL (Structured Query Language) – это язык запросов к реляционным базам данных: на нём данные выбирают, добавляют, меняют и удаляют. Его понимают PostgreSQL, MySQL, Microsoft SQL Server, Oracle и большинство других систем управления базами данных (СУБД).
Почти любой сайт хранит товары, заявки и пользователей в базе. Когда в админке вы открываете список заказов за сентябрь, система отправляет в базу SQL-запрос. Маркетолог встречает SQL напрямую, когда аналитик предлагает «выгрузить из базы» или BI-сервис просит написать запрос вместо перетаскивания полей. Не путайте язык с SQL-инъекцией: это атака на сайт, про защиту от неё есть отдельная статья.
От SEQUEL до SQL:2023: история и стандарт
Язык разработали в IBM в 1970-х годах Дональд Чемберлин и Рэймонд Бойс, сначала он назывался SEQUEL. В 1979 году SQL появился в коммерческих продуктах, в 1986 году стал стандартом ANSI, в 1987 году ISO. Последняя редакция стандарта ISO/IEC 9075 вышла в 2023 году. В разговоре язык называют и «эс-кью-эль», и «сиквел».
Стандарт один, а реализаций много, и ни одна не повторяет его целиком. В документации PostgreSQL сказано, что на момент её написания ни одна СУБД не заявляла полного соответствия базовой части SQL:2023.
Запрос на SQL: пример и основные команды
Условный пример: сколько заявок пришло из каждого источника с 1 сентября.
SELECT source, COUNT(*) AS leads FROM requests WHERE created_at >= '2026-09-01' GROUP BY source ORDER BY leads DESC;
Запрос читается почти как фраза: выбери источник и число заявок из таблицы заявок начиная с 1 сентября, сгруппируй по источнику и отсортируй по убыванию. Таблица и поля условные. В ответ база вернёт таблицу из двух столбцов: источник и число заявок.
| Команда | Что делает | Пример задачи |
|---|---|---|
| SELECT | Выбирает данные | Список заказов за месяц |
| INSERT | Добавляет строки | Новая заявка с сайта |
| UPDATE | Меняет данные | Новая цена товара |
| DELETE | Удаляет строки | Убрать тестовые заказы |
| JOIN | Соединяет таблицы в одном запросе | Заявки вместе с именами менеджеров |

SQL, СУБД и SQL Server: что как называется
На SQL пишут запросы, а выполняет их СУБД, программа, которая хранит данные. Microsoft SQL Server, он же MS SQL, назван по языку, но это конкретная СУБД от Microsoft. Основа запросов везде общая, а диалекты разные: в Microsoft SQL Server это T-SQL, в Oracle PL/SQL. Функции для дат, ограничения выборки и типы данных отличаются, поэтому при переезде с одной СУБД на другую запросы приходится проверять и переписывать.
| СУБД | Где встречается |
|---|---|
| MySQL | Сайты на CMS, в том числе на 1С-Битрикс |
| PostgreSQL | Веб-сервисы, 1С, аналитика |
| Microsoft SQL Server | Корпоративные системы, 1С |
| ClickHouse | Аналитика больших объёмов данных |
Какая СУБД у вашего сайта, проще всего спросить подрядчика. Если доступ к файлам есть, смотрите настройки подключения к базе: у 1С-Битрикс они лежат в файле /bitrix/.settings.php.
Есть и нереляционные базы (NoSQL), например хранилища «ключ-значение». У них свои способы запросов, и SQL там может не работать.
Где бизнес встречается с SQL
- Сайт. CMS хранит страницы, товары и заказы в базе. Сам ebaev.ru работает на 1С-Битрикс с MySQL.
- Учёт. 1С:Предприятие работает с Microsoft SQL Server, PostgreSQL, Postgres Pro, IBM DB2 и Oracle Database, а язык запросов 1С основан на SQL с расширениями для учётных задач.
- Отчёты. В Yandex DataLens есть QL-чарты: график строится прямо по SQL-запросу к базе.
- Сквозная аналитика. Расходы на рекламу, заявки из CRM и продажи сводят в одну базу, а запросами считают, сколько стоил клиент из каждого канала.
Почему сайт тормозит из-за базы и как пустить в неё аналитика
Разработчики не всегда пишут SQL руками. Фреймворки формируют запросы сами через ORM, CMS тоже собирает их за вас. Но когда что-то тормозит или считает неправильно, разбираются всё равно на уровне SQL: смотрят, какой запрос ушёл в базу и сколько он выполнялся.
Медленный сайт часто упирается в базу: запрос перебирает всю таблицу, потому что нет индекса, или выполняется сотни раз на одной странице. Это видно в журнале медленных запросов, подробнее о причинах в статье Скорость сайта. Индекс похож на алфавитный указатель в книге: без него СУБД листает всю таблицу, с ним сразу находит нужные строки. Индексы ставят под частые запросы, но лишние замедляют запись.
Если аналитик или маркетолог хочет работать с данными сам, дайте ему доступ так, чтобы ошибка не стоила базы.

Чем рискует боевая база: права, отчёты, инъекции и копии
- Давать доступ к боевой базе с правами на запись. Один UPDATE без условия WHERE меняет все строки таблицы.
- Строить тяжёлые отчёты по боевой базе в рабочее время. Сайт начинает тормозить у покупателей.
- Склеивать запрос из текста, который пришёл из формы. Так появляются SQL-инъекции, данные в запрос передают параметрами.
- Не проверять резервные копии базы. Копия, из которой ни разу не восстанавливались, может не сработать в нужный момент.
Ускоряем медленные запросы и настраиваем базу при доработке сайта и технической поддержке. Подключаем источники данных и собираем отчёты в услуге сквозной аналитики.
СУБД, диалекты, ошибки и SQL для маркетолога
SQL и MySQL: что из них язык, а что программа?
Язык здесь SQL, на нём пишут запросы. MySQL одна из СУБД: программа, которая хранит данные и выполняет эти запросы. Тот же язык понимают PostgreSQL, Microsoft SQL Server и Oracle, только у каждой системы свои особенности синтаксиса.
Какую СУБД выбрать для нового проекта?
Ту, с которой работают ваша платформа и команда. Сайт на 1С-Битрикс обычно живёт на MySQL, веб-сервисы и аналитика часто на PostgreSQL, корпоративные системы и 1С нередко на Microsoft SQL Server, а большие объёмы для отчётов складывают в ClickHouse. Язык запросов у всех общий, отличаются диалекты.
Зачем нужна SQL Server Management Studio?
Это бесплатная программа Microsoft для работы с SQL Server: в ней пишут и запускают запросы, смотрят таблицы, настраивают права и резервные копии. Ставят её на компьютер администратора или разработчика, на сервере базы она не обязательна.
Как создать таблицу в SQL и поменять её структуру?
Таблицу создаёт команда CREATE TABLE с перечнем столбцов и их типов, структуру меняет ALTER TABLE, удаляет DROP TABLE. В проектах на фреймворках их обычно не пишут руками: команды генерируют миграции, и изменения одинаково применяются на каждом сервере.
Почему при переезде с MS SQL на PostgreSQL запросы приходится переписывать?
Основа у них общая, а диалекты разные. Например, первые 10 строк в Microsoft SQL Server выбирают через SELECT TOP 10, а в PostgreSQL и MySQL через LIMIT 10 в конце запроса. Отличаются и функции для дат, и типы данных, поэтому каждый запрос при переезде проверяют на копии базы.
Какие права дать аналитику в базе компании?
Только на чтение, и лучше не к боевой базе, а к её копии. Заведите ему отдельную учётную запись, откройте только нужные таблицы и разрешите вход с конкретных адресов. Тогда случайный запрос без условия не изменит данные, а тяжёлый отчёт не замедлит сайт для покупателей.
Что значит ошибка SQL на странице сайта?
СУБД не смогла выполнить запрос: после обновления пропала таблица или поле, сервер базы недоступен или запрос собран с ошибкой. Текст такой ошибки посетителям показывать не стоит, по нему видно устройство базы. Передайте подрядчику адрес страницы и время, причину он найдёт в журнале ошибок.
Сколько SQL нужно знать маркетологу?
Хватит SELECT с условием WHERE, группировки GROUP BY и JOIN: с ними уже можно самому посчитать заявки по источникам за месяц.
Стандарт SQL, история IBM и документация СУБД
- IBM: история реляционных баз данных и языка SQL
- ISO/IEC 9075-1:2023 Database languages SQL
- Документация PostgreSQL: соответствие стандарту SQL
- 1С:Предприятие 8: работа с различными СУБД
- ИТС 1С: методическая поддержка, язык запросов
- Документация Yandex DataLens: QL-чарты
См. также: CMS, Скорость сайта, Технический аудит сайта, SQL-инъекция.
Остались вопросы по теме «SQL»?
Напишите нам в Telegram или MAX. Ответит специалист, который отвечает за эту тему, или руководитель проектов в рабочее время.
Отвечает по темеСергей ЧерняковWeb-разработчикНад статьёй работали
Услуги
Услуги по теме
Посчитайте стоимость проекта за 2 минуты
Калькулятор соберёт смету по нашим тарифам: сайт, дизайн, интеграции и поддержка.
