Перейти к содержимому

Минификатор SQL

Минифицируйте SQL, удаляя комментарии, переносы строк и все ненужные пробелы, сохраняя строковые литералы, идентификаторы в кавычках и операторы без изменений. Выберите диалект, например MySQL, PostgreSQL, T-SQL или BigQuery, чтобы правила кавычек, комментариев и пакетной обработки соответствовали вашей базе данных. Минификатор сообщает о незакрытых строках, комментариях и скобках с указанием строки и столбца — это удобно разработчикам, встраивающим запросы в код.

Сбросить

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

Что удаляет минификатор SQL?

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

Зачем выбирать диалект?

В базах данных используются разные правила для кавычек и комментариев. MySQL считает # началом комментария, а обратную косую черту — символом экранирования; PostgreSQL поддерживает строки в долларах, T-SQL использует [квадратные скобки] и пакеты GO, а BigQuery — строки в тройных кавычках. Диалект гарантирует, что содержимое литералов не изменится.

Какие-нибудь комментарии сохраняются?

Да. Сохраняются исполняемые комментарии MySQL и MariaDB, блочные комментарии, текст которых начинается с маркера версии, а также подсказки оптимизатору, например /*+ INDEX(t) */ — они влияют на выполнение оператора. Все остальные комментарии удаляются.

Что происходит со строками GO, / и DELIMITER?

Разделители пакетов, например GO в T-SQL, строка / в скриптах Oracle и команды DELIMITER MySQL остаются на отдельных строках. Клиентские инструменты распознают их только там, поэтому объединение с другим кодом нарушило бы работу скрипта.

Может ли минификация нарушить работу запроса?

Минификатор удаляет только пробелы и комментарии вне литералов и сохраняет пробелы между символами операторов, поэтому - -1 не превратится в комментарий. Запрос будет выполняться так же, как и раньше.

Какие ошибки обнаруживаются?

О незакрытых строковых литералах, идентификаторах в кавычках, блочных комментариях и строках в долларах, а также о несбалансированных скобках сообщается с указанием строки и столбца. Полная грамматика SQL не проверяется.

Какие диалекты доступны?

Standard SQL, MySQL, MariaDB, PostgreSQL, SQLite, T-SQL, PL/SQL, BigQuery, Snowflake, Redshift, Spark SQL, Hive, Trino и Db2. В Standard SQL, используемом по умолчанию, строки заключаются в одинарные кавычки без экранирования обратной косой чертой; двойные кавычки, обратные кавычки и квадратные скобки допустимы для идентификаторов.

Меняется ли регистр ключевых слов?

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

Каков максимальный размер входных данных?

До 1 MB SQL на запрос. Длинные скрипты миграции с большим количеством операторов минифицируются за один проход.

Сохраняется ли мой SQL?

Нет. Запросы обрабатываются в памяти и сразу возвращаются. Они никогда не сохраняются; в журнал записывается только размер запроса.

О проекте OneClick Pro

OneClick Pro — это бесплатная коллекция из более чем 150 веб-инструментов для повседневных задач: преобразования изображений и единиц измерения, форматирования и проверки кода, проверки доменов и SEO, а также работы с текстом, датами и числами. Все инструменты доступны без регистрации и подписки, а введенные вами данные используются только для расчета результата и никогда не сохраняются. Используйте коллекцию как быстрый набор инструментов для разовых задач или добавьте в закладки те, которыми пользуетесь каждый день.