Formateador y minificador de SQL
Da formato a SQL con cada cláusula en su línea, o minifícalo en una sola línea, para MySQL, PostgreSQL, SQLite, SQL Server y BigQuery.
Ejemplos de código
Copia estos ejemplos en tu propio proyecto. Cada uno usa solo la biblioteca estándar del lenguaje, así que no hay nada que instalar.
const sql = 'SELECT\n name,\n email\nFROM\n users\nWHERE\n active = 1'
console.log(sql.replace(/\s+/g, ' ').trim())Qué hace
Da formato a SQL con cada cláusula en su propia línea, o lo comprime en una sola línea. Lee MySQL, PostgreSQL, SQLite, T-SQL (SQL Server) y BigQuery además de SQL estándar, y un error de sintaxis llega con su línea y columna.
Cómo se usa
- Pega SQL, o suelta un archivo
.sql. - Elige Formatear o Minificar, luego el dialecto, las mayúsculas de las palabras clave y la sangría.
- Copia o descarga el resultado, o usa Usar la salida como entrada para convertirlo en la siguiente entrada.
Ejemplos
Al formatear select id,name from users where active=1, SELECT, FROM y WHERE quedan en líneas propias, con las columnas y condiciones con sangría debajo. Minificar la consulta formateada da SELECT id,name FROM users WHERE active = 1.
Conviene saber
- Solo cambian los espacios en blanco y, si lo eliges, las mayúsculas de las palabras clave. Los nombres, cadenas y números quedan como los escribiste.
- Minificar elimina los comentarios
--y/* */, pero conserva los comentarios de MySQL/*! */y las sugerencias del optimizador/*+ */, que una base de datos ejecuta. - Elige el dialecto de tu base de datos: los acentos graves son MySQL, los corchetes son T-SQL y las conversiones
::son PostgreSQL. - El formateador se carga la primera vez que formateas, así que ese primer resultado puede tardar un momento. Minificar no necesita descarga.
¿Por qué importa el dialecto?
Las bases de datos escriben nombres y operadores de forma distinta: MySQL entrecomilla nombres con acentos graves, T-SQL con corchetes, y PostgreSQL tiene conversiones :: y cadenas $$. Con el dialecto equivocado, un SQL válido puede no leerse o formatearse mal.
Preguntas frecuentes
¿Formatear cambia lo que hace mi consulta?
No. Solo cambian los espacios en blanco y, si lo eliges, las mayúsculas de las palabras clave. Los nombres, cadenas y números quedan como los escribiste. Minificar elimina comentarios, salvo los de MySQL /*! */ y /*+ */, que la base de datos puede ejecutar.
¿Por qué informa de un error de sintaxis?
El formateador tiene que leer la consulta para darle forma, así que se detiene en el primer token que no entiende e indica su línea y columna. Revisa primero el dialecto y luego el punto señalado: una coma, comilla o paréntesis de cierre que falta.
¿Esta herramienta envía mi SQL a algún sitio?
No. Todo ocurre en tu navegador. Lo que escribes nunca se envía a nuestros servidores.