Форматировщик SQL
Форматируйте SQL-запросы с настраиваемыми отступами, регистром ключевых слов и поддержкой MySQL, PostgreSQL и T-SQL.
Параметры форматирования
Ввод SQL
Отформатированный SQL
Formatted SQL will appear here…Похожие Инструменты
О Форматировщике SQL
Как Это Работает
- Разбивает SQL на токены: ключевые слова, идентификаторы, операторы и литералы
- Расставляет ключевые слова клауз (SELECT, FROM, WHERE, JOIN и т.д.) на новые строки
- Сохраняет строки в кавычках, комментарии и идентификаторы в точности как написаны
- Применяет выбранный регистр ключевых слов (ВЕРХНИЙ, нижний или сохранить)
- Поддерживает стандартный SQL, MySQL, PostgreSQL и T-SQL
Типичные Варианты Использования
- Разбор автоматически сгенерированных ORM-запросов для отладки
- Проверка планов запросов и логики выполнения при код-ревью
- Подготовка SQL для документации или обмена с командой
- Нормализация SQL в смешанном регистре из лог-файлов
- Приведение в порядок сгенерированных скриптов миграций
Часто Задаваемые Вопросы
Какие диалекты SQL поддерживает форматировщик?
Форматировщик поддерживает стандартный SQL, MySQL, PostgreSQL и T-SQL (SQL Server). Выбор диалекта корректирует обработку идентификаторов и специфичных для диалекта ключевых слов.
Меняет ли форматирование смысл запроса?
Нет. Форматировщик меняет только пробелы и регистр ключевых слов — он никогда не переписывает, не переставляет и не удаляет части запроса. Форматированный результат семантически идентичен исходному вводу.
Что такое стиль «запятая в начале»?
Стиль «запятая в начале» размещает запятую в начале каждого нового элемента списка, а не в конце предыдущего. Некоторые команды предпочитают его, так как он облегчает обнаружение пропущенных запятых в диффах.
Почему стоит использовать ВЕРХНИЙ РЕГИСТР для ключевых слов SQL?
Использование ВЕРХНЕГО РЕГИСТРА для зарезервированных слов (SELECT, FROM, WHERE и т.д.) и нижнего регистра для идентификаторов — наиболее распространённое соглашение стиля SQL. Это улучшает читаемость и сразу отличает ключевые слова от пользовательских имён.
Можно ли форматировать несколько SQL-выражений сразу?
Да. Вставьте несколько выражений, разделённых точками с запятой, и форматировщик обработает каждое из них. Каждая точка с запятой сохраняется в конце своего выражения в выводе.
Сохраняются ли строки в кавычках и комментарии в точности?
Да. Токенизатор обрабатывает строки в одинарных кавычках, идентификаторы в двойных кавычках, идентификаторы в обратных кавычках, идентификаторы в квадратных скобках и комментарии -- и /* */ как непрозрачные токены. Их содержимое никогда не изменяется.
Отправляет ли инструмент мой SQL на сервер?
Нет. Всё форматирование выполняется в вашем браузере с помощью JavaScript. Ваши SQL-запросы никогда не передаются на сервер, поэтому имена схем, столбцов и литералы данных остаются полностью конфиденциальными.
Какие варианты отступов доступны?
Вы можете выбрать 2 пробела, 4 пробела или символ табуляции для отступа. Отступ в 2 пробела распространён в проектах на JavaScript, а в 4 пробела — стандарт во многих руководствах по стилю SQL.
Почему подзапрос выглядит иначе, чем запрос верхнего уровня?
Подзапросы внутри скобок делают отступ на один уровень глубже относительно окружающего контекста. Это визуально передаёт логическую иерархию и облегчает отслеживание потока данных в сложных запросах.
Можно ли форматировать хранимые процедуры или DDL-выражения?
Да. Форматировщик обрабатывает CREATE TABLE, ALTER TABLE, INSERT INTO, UPDATE, DELETE и другие DDL/DML-выражения. Выражения CASE, блоки BEGIN/END и оконные функции также правильно расставляются по отступам.
Почему условия JOIN выносятся на новую строку?
Размещение каждого JOIN и его условия ON/USING на отдельных строках наглядно показывает, какие условия относятся к какому соединению, особенно когда в запросе четыре или более JOIN.
Как обрабатывать очень длинные запросы?
Вставляйте запрос целиком вне зависимости от длины — форматировщик работает полностью в браузере без обращения к серверу, поэтому даже запросы с сотнями строк форматируются мгновенно.