Saltar al contenido

Formatear consultas SQL

Da formato o minimiza SQL para MySQL, PostgreSQL, SQL Server, SQLite, BigQuery, Oracle y 14 dialectos más, con el estilo que prefieras, directamente en tu navegador.

Formateado
Pulsa Formatear SQL para embellecer tu consulta.
Se ejecuta en tu navegador · sin subir archivosCómo funciona

Cómo usar Formateador de SQL

  1. 1

    Pega tu SQL

    Pega una consulta o un script completo, o abre un archivo .sql; Ejemplo muestra una consulta desordenada para probar.

  2. 2

    Elige el dialecto

    Selecciona tu base de datos para que se reconozcan bien sus comillas, operadores y palabras clave.

  3. 3

    Define el estilo

    Elige las mayúsculas en palabras clave, la sangría, la posición de las comas y la disposición según las convenciones de tu equipo.

  4. 4

    Formatea y copia

    Pulsa Formatear SQL o Minificar, y copia el resultado resaltado o descárgalo como .sql.

Límites y Pro

Gratis y sin registro: 20 dialectos, archivos .sql de hasta 10 MB y scripts que se formateen en 20 segundos; los resultados de más de 600 000 caracteres se muestran en vista previa parcial y se copian o descargan completos.

Pro quita los anuncios; el formateador es el mismo en todos los planes. Ver Pro

Acerca de Formateador de SQL

Pega una consulta de una sola línea sacada de un log, de la salida de depuración de un ORM o del mensaje de un compañero, y este formateador la organiza como lo haría una persona cuidadosa: una cláusula por línea, las columnas seleccionadas y los joins con sangría bajo su palabra clave, y las subconsultas anidadas para que la estructura se vea de un vistazo. Entiende 20 dialectos SQL (SQL estándar, MySQL, MariaDB, PostgreSQL, SQL Server T-SQL, SQLite, Oracle PL/SQL, BigQuery, Snowflake, Redshift, Spark, Trino, DuckDB, ClickHouse, Hive, Db2, Db2 for i, SingleStore, TiDB y Couchbase N1QL), así que la sintaxis propia de cada uno, como los identificadores con comillas invertidas, los corchetes, las conversiones :: o las cadenas entre signos de dólar, se conserva intacta.

Tú eliges el estilo: palabras clave en mayúsculas, minúsculas o como estén escritas; lo mismo para los nombres de funciones y los tipos de datos; dos espacios, cuatro espacios o tabulaciones; comas al final o al principio de la línea; AND y OR antes o después del salto de línea; y una disposición estándar o tabular que alinea las palabras clave en una columna. Los scripts con varias sentencias se separan con una línea en blanco. Minificar hace lo contrario: elimina los comentarios y los espacios sobrantes, y deja intactas las cadenas, los nombres entrecomillados y las sugerencias del optimizador.

El resultado aparece con el resaltado de sintaxis y puedes copiarlo o descargarlo como archivo .sql. El formateo usa la biblioteca de código abierto sql-formatter, que se carga la primera vez que pulsas Formatear, y se ejecuta en un worker en segundo plano para que los scripts largos no bloqueen la página.

El formateador solo cambia los espacios en blanco y las mayúsculas o minúsculas. No valida los nombres de tablas o columnas, no ejecuta la consulta ni la reescribe para mejorar su rendimiento, y los procedimientos almacenados con sintaxis poco habitual de un fabricante pueden requerir el dialecto más cercano.

Privacidad

El SQL se formatea dentro de tu navegador mediante un Web Worker, así que las consultas con nombres de tablas, datos de clientes o credenciales nunca se envían a un servidor. Tu dialecto y tus opciones de estilo se guardan en el almacenamiento local; el SQL en sí no se guarda.

Características

20 dialectos SQL

MySQL, PostgreSQL, SQL Server, Oracle, BigQuery, Snowflake y 14 más.

Tu estilo de casa

Mayúsculas en palabras clave, sangría, comas al principio o al final, posición de AND/OR y disposición tabular.

También minifica

Quita comentarios y espacios para incrustar SQL en el código, sin tocar cadenas ni sugerencias.

Formateador de SQL: preguntas frecuentes

¿Formatear cambia lo que hace mi consulta?
No. Solo cambian los espacios, los saltos de línea y las mayúsculas o minúsculas de las palabras clave, funciones y tipos de datos; los identificadores, las cadenas literales y los comentarios se conservan tal cual. Cambiar la capitalización de las palabras clave es seguro porque no distinguen mayúsculas de minúsculas. PostgreSQL sí distingue en los nombres entrecomillados, por eso este formateador no los toca.
¿Por qué me aparece un error de análisis?
El formateador necesita reconocer la estructura de la sentencia, así que un paréntesis sin cerrar, una palabra clave que falta o sintaxis de otra base de datos lo detienen. El mensaje indica la línea, la columna y lo que esperaba encontrar. Elige el dialecto de tu base de datos (los corchetes requieren SQL Server; las comillas invertidas, MySQL, MariaDB o BigQuery) y revisa si hay sentencias sin terminar al final.
¿Las comas van al principio o al final de la línea?
Las comas al final son el estilo más común y el que producen la mayoría de las herramientas. Las comas al principio facilitan comentar la última columna y hacen que añadir una columna modifique una sola línea en el diff, por eso algunos equipos de datos las prefieren. Elige la que use tu equipo; la opción solo se aplica a la disposición estándar.
¿Puede formatear procedimientos almacenados y scripts con muchas sentencias?
Sí. Pega un script completo y cada sentencia se formatea y se separa con una línea en blanco, incluidas CREATE TABLE, INSERT, UPDATE, MERGE y los bloques procedimentales habituales. El código procedimental específico de un fabricante, como lotes complejos de T-SQL con separadores GO o paquetes PL/SQL, puede no entenderse del todo; elige el dialecto correspondiente y formatea bloques más pequeños si falla alguna sección.
¿Qué elimina Minificar?
Minificar elimina los comentarios -- y /* */ (y los comentarios # en MySQL y MariaDB), reduce las series de espacios y saltos de línea a un solo espacio y quita los espacios junto a comas y paréntesis. Las cadenas literales, los identificadores entrecomillados y las sugerencias del optimizador escritas como /*+ … */ o /*! … */ de MySQL se conservan, de modo que la consulta minificada se ejecuta igual que la original.