Saltar al contenido

Formateador SQLBeta

Reordena tu SQL en líneas legibles por cláusula (SELECT, FROM, WHERE …). Elige un dialecto: MySQL, PostgreSQL, T-SQL y más. Todo se queda en tu navegador.

0 caracteres · 0 líneas
Mayúsculas/minúsculas de palabras clave

Salida0 caracteres · 0 líneas

Cómo usarlo

Pega tu SQL en el cuadro de entrada y se reparte en líneas independientes y con sangría por cláusula (SELECT, FROM, WHERE, JOIN, etc.), fácil de leer de un vistazo. Elige la base de datos que usas en Lenguaje, y ajusta a tu gusto las mayúsculas/minúsculas de las palabras clave (mayúsculas, minúsculas o tal como se escribieron), el ancho de sangría (2 espacios, 4 espacios o un tabulador) y el número de líneas en blanco entre consultas. Si pegas varias consultas separadas por punto y coma (;), cada una se formatea por separado.

Los dialectos tienen una sintaxis distinta

SQL tiene un estándar, pero cada base de datos real se aparta un poco de él en los detalles. BigQuery, por ejemplo, encierra los nombres de tabla entre comillas invertidas (`), mientras que T-SQL (SQL Server) tiene su propia cláusula TOP N e identificadores entre corchetes. Elegir el dialecto equivocado puede hacer que una consulta por lo demás válida no se pueda analizar, así que conviene elegir en Lenguaje el dialecto que coincida con el motor que realmente usas: SQL estándar, MySQL, PostgreSQL, SQLite, T-SQL (SQL Server) o BigQuery.

Cuando algo sale mal

Si el SQL que pegaste no se puede analizar con la gramática del motor de formato, verás un mensaje de error en lugar de un resultado. Cuando la librería puede determinar dónde se detuvo, también se muestran la línea y la columna; revisa esa zona por si falta cerrar un paréntesis o hay sintaxis que el dialecto elegido no admite.

Por qué no hay opción de «minificar»

Esta herramienta solo da formato legible; no ofrece una forma de comprimirlo todo en una sola línea. Quitar espacios de forma segura sin tocar lo que hay dentro de cadenas de texto o comentarios exige analizar completamente el SQL, y la librería que usa (sql-formatter) no tiene esa función; construir una versión propia e improvisada podría dañar el contenido de las cadenas. Si quieres un resultado más compacto, prueba con una sangría más estrecha y pon a cero las líneas en blanco entre consultas.

Privacidad

El SQL que pegas se procesa por completo en esta pestaña del navegador y nunca se guarda ni se transmite a ningún sitio. El motor de formato (sql-formatter) solo se descarga cuando hace falta y se ejecuta localmente: tu consulta nunca se envía a ninguna parte.

Fuentes

Preguntas frecuentes

¿Qué dialecto debo elegir?

Elige el que corresponda a tu base de datos. Si usas un motor concreto como MySQL, PostgreSQL o SQLite, elige ese; si no dependes de un motor concreto o escribes SQL estándar, elige «SQL estándar». Los dialectos difieren en detalles como el uso de comillas en las cadenas o cómo se escriben los identificadores (comillas invertidas en BigQuery, corchetes en T-SQL), así que elegir el dialecto equivocado puede hacer que una consulta perfectamente válida aparezca como un error.

¿Por qué no hay una opción para minificar (una sola línea)?

Eliminar espacios de forma segura, sin tocar los que hay dentro de cadenas de texto o comentarios, requiere analizar completamente el SQL, y la librería que usa esta herramienta (sql-formatter) solo da formato legible, no ofrece un modo de una sola línea. En vez de improvisar algo que podría dañar el contenido de las cadenas, se ha dejado fuera a propósito. Si quieres algo más compacto, prueba con una sangría más estrecha y cero líneas en blanco entre consultas.

¿Puede formatear varias consultas separadas por punto y coma a la vez?

Sí. Pega varias consultas separadas por punto y coma (;) y cada una se formatea por separado; la opción «Líneas en blanco entre consultas» controla cuántas líneas en blanco se dejan entre ellas.

¿Admite sintaxis compleja o específica de un dialecto?

En la mayoría de los casos sí. Pero dar formato requiere analizar realmente el SQL, así que una sintaxis que el dialecto elegido no admite, o un SQL con un error de sintaxis real, aparece como error en lugar de un resultado formateado, con la línea y la columna donde se detuvo el análisis cuando la librería puede indicarlo.

Software de código abierto utilizado: sql-formatter (MIT), nearley (MIT)