SQLFormatter
FormatterConvertPricingDocsGet Pro
SQL Converter · PostgreSQLMySQL

Convert PostgreSQL SQL to MySQL

PostgreSQL to MySQL swaps "double quotes" for `backticks`, ILIKE for LIKE, || for CONCAT() and STRING_AGG for GROUP_CONCAT. A mechanical formatter only re-indents — it won’t rewrite dialect-specific syntax. The AI converter in the app translates the query and the table below shows exactly what changes.

PostgreSQL — source
PostgreSQL
SELECT u.id,
       u.first || ' ' || u.last AS name
FROM users u
WHERE u.email ILIKE '%@acme.com'
ORDER BY u.created_at DESC
LIMIT 25;
MySQL — converted
MySQL
SELECT u.id,
       CONCAT(u.first, ' ', u.last) AS name
FROM users u
WHERE u.email LIKE '%@acme.com'
ORDER BY u.created_at DESC
LIMIT 25;
Convert your own query

What changes from PostgreSQL to MySQL

PostgreSQLMySQLWhy
a || b || cCONCAT(a, b, c)MySQL uses CONCAT(); || is logical OR unless PIPES_AS_CONCAT is set.
ILIKELIKEMySQL LIKE is already case-insensitive on most collations; there is no ILIKE.
"identifier"`identifier`Double-quote identifiers become backticks.

Other SQL conversions

T-SQLMySQLPostgreSQLT-SQLOracleMySQLPostgreSQLRedshiftPostgreSQLBigQueryPostgreSQLSnowflakeAll conversions →