Qué hace
El formateador de SQL convierte una consulta larga de una sola línea en una consulta legible con sangría coherente. Cada cláusula (SELECT, FROM, WHERE, GROUP BY, ORDER BY) empieza en su propia línea, las columnas seleccionadas y las condiciones se listan una por línea, los joins se alinean bajo la tabla a la que se unen y las subconsultas se indentan dentro de sus paréntesis.
El SQL formateado es más fácil de revisar en pull requests, de depurar cuando una consulta devuelve filas incorrectas y de pegar en documentación. También ayuda cuando copias una consulta del log de un ORM o de un mensaje de error de una aplicación, donde todo está en una línea.
Cómo se usa
- Pega una o varias sentencias SQL en el cuadro Entrada, suelta un archivo
.sqlsobre él o haz clic en Ejemplo. - Elige el Dialecto de tu base de datos.
- Elige Palabras clave en MAYÚSCULAS, minúsculas o como se escribieron. Los nombres de funciones como
COUNTsiguen el mismo ajuste. - Elige 2 espacios, 4 espacios o tabulaciones para la Sangría.
- Copia el resultado o descárgalo como archivo
.sql. Atajos: Ctrl/Cmd+Enter formatea, Ctrl/Cmd+Shift+C copia.
Las sentencias separadas por punto y coma se separan con una línea en blanco. Los comentarios se quedan donde están.
Ejemplo
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
se convierte en
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
Consejos
Las palabras clave en mayúsculas hacen que las cláusulas destaquen frente a los nombres de tablas y columnas, y es la convención de equipo más habitual. Si tu equipo escribe SQL en minúsculas, elige minúsculas y toda la consulta coincidirá. Si el formateador informa de un token inesperado, comprueba que el dialecto sea el correcto: por ejemplo, los nombres entre backticks son válidos en MySQL pero no en SQL estándar.
Preguntas frecuentes
› ¿Se envía mi SQL a un servidor?
No. El formateador se ejecuta en tu navegador, así que las consultas que revelan nombres de tablas, datos de clientes o lógica de negocio se quedan en tu dispositivo.
› ¿Qué dialectos de SQL se admiten?
SQL estándar, MySQL, MariaDB, PostgreSQL, SQLite, SQL Server (T-SQL), Oracle (PL/SQL), BigQuery, Snowflake, Redshift y Spark SQL. Elegir el dialecto correcto ayuda con la sintaxis propia de cada uno, como los identificadores entre backticks, los casts con :: o los nombres entre corchetes.
› ¿El formateo cambia lo que hace la consulta?
No. Solo cambian los espacios en blanco y, si lo eliges, las mayúsculas y minúsculas de las palabras clave y los nombres de funciones. Los identificadores, los literales de cadena y los comentarios se mantienen exactamente como se escribieron.
› ¿Por qué obtengo "Unexpected end of input"?
Normalmente hay un paréntesis o una comilla sin cerrar. El error apunta al final de la consulta; busca el último ( o ' de apertura que no tenga pareja.