SQL & Databases
SQL is the one language on this site with no single grammar. PostgreSQL, MySQL, SQLite and T-SQL disagree about identifier quoting, string escaping, pagination and date handling, so a statement formatted for one engine can be invalid in another. These tools format, minify and diagram SQL locally, which matters more here than elsewhere: a query or a schema usually carries table names, column names and business logic that should not be pasted into a remote service.
Tools (5)
Dialects differ by more than whitespace
Identifier quoting is the clearest split. PostgreSQL wraps a reserved word in double quotes, MySQL uses backticks, and SQL Server uses square brackets, so a column named order is written three different ways depending on the engine. Pagination diverges too, with LIMIT in PostgreSQL, MySQL and SQLite against TOP or OFFSET FETCH in T-SQL. SQL Formatter takes the dialect as an explicit option instead of guessing, and CSV to SQL quotes the identifiers it generates the same way.
Formatting belongs in review, not in production
Minified SQL is for transport and log lines; readable SQL is for review. SQL Minifier strips comments and collapses whitespace when a query has to travel on one line, and the formatter reverses that when a statement arrives from an ORM log as a single four-hundred-character string. Neither sends the query anywhere, which is the point when the WHERE clause embeds customer identifiers or internal thresholds.
From flat data to a schema
CSV to SQL turns a spreadsheet export into CREATE TABLE and INSERT statements, inferring column types while keeping leading zeros intact so a postal code like 02134 stays text instead of silently becoming the number 2134. JSON to SQL does the same for an array of objects and flattens nested fields into columns. SQL to ERD runs the other direction, reading DDL and drawing the relationships between tables.
Cheat sheets
Guides
FAQ
Why does the same query format differently for MySQL and PostgreSQL?
Because the dialects genuinely differ. Reserved-word quoting, string escaping and pagination keywords are not shared, so the formatter applies the rules of the engine you select rather than producing one generic output that would be wrong somewhere.
Is it safe to format a query that contains customer data?
Yes. The formatter and minifier run entirely in your browser tab, so the statement is never transmitted. That is the main reason to use a local formatter rather than an online one for anything touching production.
How do I stop a CSV import from destroying leading zeros?
Do not let the importer guess types. CSV to SQL deliberately avoids dynamic typing and treats a value like 02134 as text, because inferring a number there loses information that cannot be recovered afterwards.
Which dialect should I choose if I am not sure?
Pick the engine that will actually execute the statement. If the SQL is only going into documentation or a code review, the generic option is fine, since nothing will parse it strictly.