What this does
This reformats SQL for readability: each major clause (SELECT, FROM, WHERE, JOIN, GROUP BY, ORDER BY, and friends) starts on its own line, columns and conditions are indented and broken onto separate lines, and subqueries are indented one level deeper than the query that contains them. It works by tokenizing the SQL and applying formatting rules based on keywords and punctuation — not by fully parsing it against a specific database's grammar, so it works equally well across MySQL, PostgreSQL, SQL Server, and SQLite for the common SQL that's shared across all of them.
What it won't do
This is a formatter, not a validator — it doesn't check that your SQL is valid or that table and column names exist, it just reformats whatever you paste in. Highly dialect-specific or unusual syntax (window functions, stored procedure bodies, vendor-specific hints) will generally pass through readably but may not get the same clause-by-clause treatment as standard SELECT/INSERT/UPDATE/DELETE statements.
Options
- Keyword case — force keywords to UPPERCASE or lowercase, or leave them exactly as typed.
- Indent size — 2 or 4 spaces per nesting level.
How this is computed
Formatting happens entirely in your browser via a small hand-written tokenizer and formatter — your SQL, which often contains schema details or business logic you'd rather not paste into a random web form, is never sent anywhere.