Що робить цей інструмент
Форматувальник SQL перетворює довгий однорядковий запит на читабельний із послідовними відступами. Кожна секція (SELECT, FROM, WHERE, GROUP BY, ORDER BY) починається з нового рядка, вибрані стовпці й умови йдуть по одному на рядок, з’єднання (JOIN) вирівнюються під таблицею, до якої приєднуються, а підзапити отримують відступ усередині своїх дужок.
Відформатований SQL легше переглядати в pull request, налагоджувати, коли запит повертає не ті рядки, і вставляти в документацію. Це також допомагає, коли ви копіюєте запит із логу ORM чи повідомлення про помилку застосунку, де все записано в один рядок.
Як користуватися
- Вставте одну чи кілька SQL-інструкцій у поле Вхідні дані, перетягніть на нього файл
.sqlабо натисніть Приклад. - Виберіть Діалект вашої бази даних.
- Виберіть для Ключові слова ВЕЛИКІ ЛІТЕРИ, малі літери або залиште як введено. Назви функцій, як-от
COUNT, дотримуються того самого налаштування. - Виберіть для Відступ 2 пробіли, 4 пробіли або табуляцію.
- Скопіюйте результат або збережіть його як файл
.sql. Гарячі клавіші: Ctrl/Cmd+Enter форматує, Ctrl/Cmd+Shift+C копіює.
Кілька інструкцій, розділених крапкою з комою, відокремлюються порожнім рядком. Коментарі лишаються на своїх місцях.
Приклад
select u.id, count(o.id) as orders from users u left join orders o on o.user_id = u.id group by u.id
перетворюється на
SELECT
u.id,
COUNT(o.id) AS orders
FROM
users u
LEFT JOIN orders o ON o.user_id = u.id
GROUP BY
u.id
Поради
Ключові слова великими літерами вирізняють секції серед назв таблиць і стовпців — це найпоширеніша домовленість у командах. Якщо ваша команда пише SQL малими літерами, виберіть малі літери, і весь запит буде в одному стилі. Якщо форматувальник повідомляє про неочікуваний токен, перевірте, чи правильно вибрано діалект: наприклад, назви у зворотних апострофах допустимі в MySQL, але не в стандартному SQL.
Часті запитання
› Чи надсилається мій SQL на сервер?
Ні. Форматувальник працює у вашому браузері, тож запити, що розкривають назви таблиць, дані клієнтів чи бізнес-логіку, лишаються на вашому пристрої.
› Які діалекти SQL підтримуються?
Стандартний SQL, MySQL, MariaDB, PostgreSQL, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), BigQuery, Snowflake, Redshift і Spark SQL. Правильно вибраний діалект допомагає з характерним для нього синтаксисом, як-от ідентифікатори у зворотних апострофах, приведення типів через :: чи назви у квадратних дужках.
› Чи змінює форматування те, що робить запит?
Ні. Змінюються лише пробільні символи та, якщо ви так виберете, регістр ключових слів і назв функцій. Ідентифікатори, рядкові літерали й коментарі зберігаються точно так, як їх написано.
› Чому я отримую «Unexpected end of input»?
Зазвичай не закрито дужку або лапку. Помилка вказує на кінець запиту; шукайте останню відкривальну ( або ', яка не має пари.