Форматувальник SQL
Форматуйте запити SQL для PostgreSQL, MySQL, SQL Server, Oracle, BigQuery, Snowflake та інших з вибором регістру ключових слів і відступів у браузері.
Як відформатувати запит SQL
- Вставте один чи кілька запитів або натисніть Відкрити файл, щоб завантажити файл
.sql(до 10 МБ). - Виберіть Діалект вашої бази даних, наприклад PostgreSQL, MySQL чи SQL Server (T-SQL).
- Виберіть, як писати Ключові слова (ВЕЛИКИМИ, малими чи Як введено), і Відступи.
- Позначте Без пробілів навколо операторів, якщо вам більше до вподоби
a=b+1, ніжa = b + 1. - Натисніть Форматувати SQL, а потім скопіюйте або завантажте результат. Зміна параметра переформатовує запит.
Запит лише переформатовується як текст. Його ніколи не виконують і ніколи не надсилають до бази даних чи на сервер.
Що робить форматувальник
Інструмент використовує бібліотеку sql-formatter з відкритим кодом. Він розбиває кожен оператор на клаузи й розміщує ключове слово кожної клаузи (SELECT, FROM, WHERE, GROUP BY, ORDER BY…) в окремому рядку, а вміст клаузи – з відступом нижче. Стовпці у списку SELECT стоять по одному в рядку, умови AND та OR починають нові рядки, а підзапити й вирази CASE мають відступи за рівнем вкладеності. Короткі вирази в дужках лишаються в одному рядку. Кілька операторів, розділених крапкою з комою, відокремлюються порожнім рядком.
Змінюються лише пробіли та регістр літер. Рядкові літерали, ідентифікатори в лапках і коментарі зберігаються точно, тож відформатований запит повертає той самий результат, що й оригінал.
Чому важливий діалект
Бази даних SQL мають спільне ядро мови, але відрізняються деталями, і форматувальник мусить їх знати, щоб правильно прочитати запит:
- ідентифікатори беруться в
"подвійні лапки"у стандартному SQL і PostgreSQL, у`зворотні лапки`у MySQL, MariaDB та BigQuery і в[квадратні дужки]у SQL Server; - оператори на кшталт
->>і приведення типів::у PostgreSQL чи доступ за шляхом через:у Snowflake існують лише в деяких діалектах; - заповнювачі параметрів різняться:
?,$1,:nameчи@name; - кожен діалект має власні зарезервовані слова й функції, на які впливає параметр Ключові слова.
Якщо ви бачите «Не вдалося розібрати запит», спершу перевірте, чи вибраний діалект відповідає вашій базі даних. Помилка показує рядок і стовпець, де розбір зупинився. Стандартний SQL – найсуворіший вибір; за можливості вибирайте свою справжню базу даних.
Регістр ключових слів і поради щодо стилю
Ключові слова великими літерами лишаються найпоширенішою угодою, бо одразу відокремлюють мову від назв таблиць і стовпців. Малі літери популярні в командах, яким так легше читати, а Як введено залишає ваш вибір без змін. Назви таблиць, стовпців і функцій ніколи не змінюються: параметру підпорядковуються лише зарезервовані ключові слова. Для довгих файлів послідовне форматування також значно полегшує перегляд відмінностей між версіями.
Поширені запитання
Які діалекти підтримуються?
Стандартний SQL, PostgreSQL, MySQL, MariaDB, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), Google BigQuery, Snowflake, Amazon Redshift, IBM Db2, Db2 for i, Apache Hive, Spark SQL, Trino/Presto, DuckDB, ClickHouse, SingleStoreDB, TiDB і Couchbase N1QL.
Чи перевіряє інструмент, що мій запит дійсний?
Ні. Він перевіряє, що запит можна прочитати у вибраному діалекті, але не те, що таблиці чи стовпці існують або що запит виконається. Це може підтвердити лише ваша база даних.
Чи можна форматувати збережені процедури?
Частково. Оператори всередині процедур форматуються, але процедурні блоки (BEGIN … END, цикли, DECLARE) розкладаються простіше, ніж у спеціалізованому середовищі розробки.
Чи надсилається мій запит на сервер?
Ні. Форматування виконується у вашому браузері, тому запити з назвами таблиць чи даними залишаються на вашому комп’ютері.
Чому мій коментар опинився в іншому місці?
Коментарі зберігаються, але коментар наприкінці рядка може переміститися разом з елементом, за яким іде, коли цей елемент переходить на новий рядок.
Схожі інструменти
- Форматувальник і валідатор JSON Безкоштовний форматувальник і валідатор JSON: форматує, мінімізує та перевіряє JSON у браузері й показує помилки синтаксису з рядком і стовпцем.
- Форматувальник і мінімізатор JavaScript Відформатуйте мінімізований JavaScript, мінімізуйте його за допомогою Terser або перевірте синтаксис із точним рядком і стовпцем помилки. Лише у браузері.
- Форматувальник XML Форматуйте, мініфікуйте й перевіряйте XML у браузері. Помилки показуються з рядком і стовпцем. Ваші файли ніколи не завантажуються на сервер.