OpenReplay Logo
12k
12k

Форматировщик SQL

Форматируйте, приукрашивайте и минифицируйте SQL для всех основных диалектов — обработка локальна в вашем браузере, поэтому ваши запросы никогда не покидают вашу машину.

Регистр ключевых слов
Обрабатывается локально

Об этом инструменте

Форматировщик SQL нормализует пробелы, отступы и регистр ключевых слов запроса, не меняя того, что он делает. Он разбирает ваш SQL на токены и заново выдаёт их с согласованными переносами строк и отступом в два пробела, так что предложения вроде SELECT, JOIN, WHERE и GROUP BY выстраиваются предсказуемо. Этот инструмент поддерживает стандартный SQL плюс правила, специфичные для диалектов PostgreSQL, MySQL, SQLite, BigQuery, Snowflake и SQL Server, и позволяет принудительно приводить ключевые слова к UPPER, lower или сохранять их исходный регистр.

Используйте инструмент, чтобы привести в порядок однострочный запрос, скопированный из журнала ORM, сделать плотную сгенерированную инструкцию пригодной для просмотра в pull request или унифицировать регистр в SQL-файлах команды. Кнопка Minify делает обратное — она сворачивает отформатированный запрос обратно в одну строку и удаляет комментарии, оставляя нетронутым содержимое строк в кавычках — что удобно для вставки компактного запроса в значение конфигурации или строку кода.

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

Часто задаваемые вопросы

Какие диалекты SQL поддерживает этот форматировщик?

Он поддерживает стандартный SQL, PostgreSQL, MySQL, SQLite, BigQuery, Snowflake и SQL Server (Transact-SQL). Каждый диалект применяет собственные правила ключевых слов и синтаксиса, чтобы вывод соответствовал соглашениям этого движка.

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

Нет. Форматирование корректирует только пробелы, отступы и регистр ключевых слов — токены и логика запроса остаются неизменными, поэтому отформатированный запрос выполняется идентично оригиналу.

Удаляет ли минификация SQL пробелы внутри моих строковых значений?

Нет. Минификация сворачивает пробелы и удаляет комментарии только за пределами строк в кавычках, так что литерал вроде 'a b' сохраняет свои внутренние пробелы, а встроенный текст, похожий на комментарий, остаётся нетронутым.