onlinetools.dev

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

Форматируйте SQL с ключевыми словами под нужный диалект или минифицируйте в одну строку

Работает локально
loading…
Об этом инструменте

Вставьте запрос прямо из лог-файла, отладочного дампа ORM или однострочник коллеги — и форматтер разобьёт его на читаемые клаузы с единообразными отступами. Поддерживаются шесть диалектов — стандартный SQL, PostgreSQL, MySQL, SQLite, SQL Server и BigQuery, — поэтому диалектный синтаксис вроде TOP, идентификаторов в бэктиках или массивных типов форматируется корректно, а не спотыкает парсер.

Регистр ключевых слов настраивается: ВЕРХНИЙ для классического вида, нижний, если так принято в вашей команде, или оставьте оригинал нетронутым. Режим минификации делает обратное — сворачивает отформатированный запрос в одну строку, убирая комментарии и сохраняя строковые литералы байт в байт: именно это нужно перед вставкой SQL в JSON-конфиг или флаг CLI.

Запросы часто содержат имена таблиц, данные клиентов в литералах и намёки на инфраструктуру. Форматирование выполняется целиком в вашем браузере, поэтому ничего из этого не попадает на сервер.

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

Какой диалект SQL выбрать?
Тот, на котором говорит ваша база данных — от него зависит разбор идентификаторов, кавычек в строках и диалектных ключевых слов. Для простого наведения порядка стандартный SQL покрывает общее ядро. Ошибка разбора на синтаксисе, корректном для вашей базы, — обычно знак, что пора переключить диалект.
Меняет ли форматирование смысл запроса?
Нет. Форматирование двигает только пробельные символы и, если включено, регистр ключевых слов — идентификаторы и литералы сохраняют свои байты в точности. Ключевые слова SQL регистронезависимы во всех поддерживаемых диалектах, поэтому SELECT и select — один и тот же запрос.
Можно ли отформатировать несколько запросов сразу?
Да — вставьте целый скрипт, и каждый завершённый точкой с запятой запрос будет отформатирован по порядку, с пустой строкой между ними.
Что именно удаляет минификация?
Строчные комментарии (--) и блочные (/* */) отбрасываются, последовательности пробельных символов сворачиваются в одиночные пробелы, пробелы вокруг запятых и скобок удаляются. Текст в одинарных кавычках, двойных кавычках и бэктиках не трогается никогда, включая экранирование удвоенными кавычками.
Похожие инструменты