Форматирование SQL онлайн

Форматирование SQL-запроса онлайн

Вставьте запрос, чтобы расставить отступы — по предложению на строку, столбцы и условия друг под другом, подзапросы и CASE с вложенностью — или ужать его в одну строку. Строки, имена в кавычках и комментарии никогда не меняются, а SQL не покидает ваш браузер.

Ключевые слова
Результат
Отступ
  • Отформатированный SQL

    -- лучшие клиенты за год SELECT c.id, c.name, COUNT(o.id) AS orders, SUM(o.total) AS spent, CASE WHEN SUM(o.total) > 100000 THEN 'золото' ELSE 'стандарт' END AS tier FROM customers c LEFT JOIN orders o ON o.customer_id = c.id AND o.status <> 'отменён' WHERE o.created_at >= '2026-01-01' AND c.city IN ('Москва', 'Казань') GROUP BY c.id, c.name HAVING COUNT(o.id) > 2 ORDER BY spent DESC LIMIT 10;

Операторов1
Строк25
Комментариев1
Размер до (байт)447
Размер после (байт)487

Строки, имена в кавычках, числа и комментарии скопированы ровно так, как записаны; меняются только регистр ключевых слов и пробелы.

Расчёт выполняется на вашем устройстве · формулы проверены на известных значениях · Как мы проверяем

Как отформатировать SQL-запрос

  1. Вставьте один запрос или целый скрипт — несколько операторов через точку с запятой тоже подойдут. Форматирование идёт сразу при вставке.
  2. Выберите вашу СУБД в поле Диалект, чтобы правильно читались её кавычки (см. таблицу ниже). По умолчанию стоит PostgreSQL. Затем выберите, как писать ключевые слова: ПРОПИСНЫМИ, строчными или как написано.
  3. Выберите Форматировать — по предложению на строку с отступом в 2 или 4 пробела либо табуляцией — или В одну строку, чтобы ужать каждый оператор в одну строку для лога, конфигурации или строки в коде.
  4. Нажмите Копировать рядом с результатом или Скачать, чтобы сохранить файл .sql.

Как раскладывается запрос

Форматер читает SQL как последовательность лексем — ключевых слов, имён, строк, чисел, операторов, комментариев — и раскладывает их по нескольким фиксированным правилам:

Что не меняется никогда

Строки, имена в кавычках ("Заказ", `order`, [Дата заказа]), числа, комментарии и тела функций PostgreSQL в долларовых кавычках копируются ровно так, как записаны. Регистр меняется только у ключевых слов SQL и — прямо перед скобкой — у встроенных функций вроде COUNT( или COALESCE(. Имена ваших таблиц и столбцов, в том числе кириллические, сохраняют написание, как и слова, которые в одних СУБД ключевые, а в других — частые имена столбцов: date, name, status, type, value, timestamp. Имя после точки, как в t.order, всегда считается именем. Ничего не добавляется и не удаляется, кроме пробелов, поэтому отформатированный запрос возвращает те же строки.

Пример

В поле — отчётный запрос в одну строку: комментарий, выражение CASE, условие соединения из двух частей, список IN с городами и предложение HAVING. С настройками по умолчанию он выглядит так:

-- лучшие клиенты за год
SELECT
  c.id,
  c.name,
  COUNT(o.id) AS orders,
  SUM(o.total) AS spent,
  CASE
    WHEN SUM(o.total) > 100000 THEN 'золото'
    ELSE 'стандарт'
  END AS tier
FROM
  customers c
  LEFT JOIN orders o ON o.customer_id = c.id
    AND o.status <> 'отменён'
WHERE
  o.created_at >= '2026-01-01'
  AND c.city IN ('Москва', 'Казань')
GROUP BY
  c.id,
  c.name
HAVING
  COUNT(o.id) > 2
ORDER BY
  spent DESC
LIMIT 10;

Комментарий остаётся на своей строке, строки «золото», «Москва» и «отменён» сохраняют кавычки, а псевдонимы c, o и spent — свой регистр. Подзапрос и общее табличное выражение выглядят так:

WITH recent AS (
  SELECT
    customer_id
  FROM
    orders
  WHERE
    created_at > NOW() - INTERVAL '30 days'
)
SELECT
  name
FROM
  customers
WHERE
  id IN (
    SELECT
      customer_id
    FROM
      recent
  )

Диалекты: что меняет выбор

В каждой СУБД SQL пишут немного по-своему, прежде всего — кавычки. Диалект говорит форматеру, как читать текст; переписывать запрос под другую базу он не будет.

ДиалектЧто читается иначе
Стандартный SQL'текст' с '' для кавычки внутри, "имя", -- комментарий и /* комментарий */
MySQL / MariaDB"текст" — строка, обратная косая черта экранирует ('It\'s'), `имя`, # комментарий; -- начинает комментарий, только если за ним пробел
PostgreSQLТела $$ … $$ и $tag$ … $tag$ целиком, строки E'…' с экранированием, вложенные комментарии /* /* */ */, приведение типов ::, параметры $1
SQL Server (T-SQL)[имя] с ]] внутри, N'текст', @переменные, временные таблицы #temp, вложенные комментарии и GO на отдельной строке как разделитель пакетов
Oracle (PL/SQL)Альтернативные кавычки q'[It's]', переменные привязки :bind
SQLite[имя] и `имя` наряду с "имя"; параметры ?, ?1, :name, @name и $name

Разница важна: 'It\'s' — законченная строка в MySQL, а в стандартном SQL обратная косая черта — обычный символ, строка заканчивается на второй кавычке, а третья открывает строку, которая никогда не закроется. С неправильным диалектом вы увидите «Строка не закрыта». Для ClickHouse, где строки тоже понимают обратную косую черту, обычно подходит «Стандартный SQL», а если в строках есть \' — MySQL.

Запросы 1С — не SQL

Язык запросов 1С:Предприятия похож на SQL, но использует русские ключевые слова: ВЫБРАТЬ, ИЗ, ГДЕ, КАК. Форматер знает только ключевые слова SQL, поэтому такой запрос он оставит как есть, в одну строку: ВЫБРАТЬ Товары.Наименование ИЗ Справочник.Товары КАК Товары ГДЕ Товары.Цена > 100. Для запросов 1С пользуйтесь конструктором запросов в конфигураторе. А вот SQL, который 1С выполняет на PostgreSQL или SQL Server (например, из технологического журнала), форматируется как обычно.

Какие ошибки он находит

Форматер — не полный парсер SQL и не проверяет, что запрос допустим для вашей базы. Он останавливается только там, где не может понять, где кончается лексема: незакрытая строка, имя в кавычках, комментарий или тело в долларовых кавычках, скобка без пары и типографские кавычки (‘ ’ “ ” « »), вставленные из Word или мессенджера. Для каждой ошибки показываются строка, столбец и место, отмеченное знаком ^.

Ограничения и советы

SQL остаётся на вашем устройстве

Форматирование выполняется в вашем браузере. Запросы часто раскрывают имена таблиц, данные клиентов в литералах и устройство вашей базы — ничего из этого не загружается на сервер и не записывается в логи. Данные и не сохраняются: после перезагрузки страницы поле очищается.

Частые вопросы

Меняет ли форматирование то, что делает запрос?

Нет. Меняются только пробелы и регистр ключевых слов, а ключевые слова SQL к регистру не чувствительны. Строки, имена в кавычках, числа и комментарии копируются в точности, поэтому запрос возвращает те же строки.

Какой диалект выбрать?

Тот, в котором работает запрос: PostgreSQL, MySQL, SQL Server и т. д. Выбор меняет только чтение кавычек, обратных косых черт и комментариев; если в запросе нет особых форм из таблицы выше, все диалекты дают одинаковый результат.

Почему слова вроде date или name не стали прописными?

Слова date, name, status, type, value и timestamp в одних СУБД — ключевые, а в других — очень частые имена столбцов, поэтому они сохраняют ваше написание. Функции вроде count или date становятся прописными, только если за ними идёт скобка.

Исправит ли он синтаксические ошибки?

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

Подходит ли он для запросов 1С?

Нет: язык запросов 1С использует русские ключевые слова (ВЫБРАТЬ, ИЗ, ГДЕ), которых форматер не знает, и оставит такой запрос в одну строку. SQL, который 1С отправляет в PostgreSQL или SQL Server, форматируется как обычно.

Загружается ли мой SQL куда-нибудь?

Нет. Форматер работает как JavaScript в вашем браузере, запросы не покидают устройство, а после загрузки страница работает даже без интернета.

Разместите этот калькулятор на своём сайте

Бесплатно для любого сайта или блога. Вставьте этот код туда, где должен появиться калькулятор:

Обновлено: 16 октября 2026 г.

Меню

Разделы

Финансовые калькуляторы15 калькуляторовКалькуляторы для бизнеса и покупок6 калькуляторовКалькуляторы здоровья7 калькуляторовМатематические и школьные калькуляторы9 калькуляторовКалькуляторы дат и времени5 калькуляторовСколько дней до праздника8 калькуляторовКалькуляторы и инструменты на каждый день14 калькуляторовИнструменты для PDF и фото13 калькуляторовПроверка микрофона и камеры, запись экрана6 калькуляторовИнструменты для разработчиков8 калькуляторов

CalcWorthy

О проектеКонтактыКонфиденциальностьУсловия использования

Язык

Язык
РусскийRussianEnglishEnglishالعربيةArabicবাংলাBanglaDeutschGermanEspañolSpanishفارسیPersianFrançaisFrenchעבריתHebrewहिन्दीHindiBahasa IndonesiaIndonesianItalianoItalian日本語Japanese한국어KoreanBahasa MelayuMalayNederlandsDutchPolskiPolishPortuguêsPortugueseไทยThaiTürkçeTurkishУкраїнськаUkrainianاردوUrduTiếng ViệtVietnamese简体中文Simplified Chinese