Una consulta SQL en una sola línea es un acertijo; la misma consulta con sus cláusulas en líneas separadas es un documento. Este formateador de consultas SQL reordena el SQL tal como lo escriben los desarrolladores con experiencia: SELECT, FROM, WHERE, cada JOIN, GROUP BY y ORDER BY empiezan su propia línea, las condiciones se alinean bajo WHERE y las palabras clave van en mayúsculas para que la estructura salte a la vista.
Funciona con un tokenizador de verdad, no con buscar-y-reemplazar, así que el texto dentro de literales nunca se confunde con una palabra clave: una nota que diga «from the where clause» sobrevive intacta al formateo. Todo se ejecuta en local, en tu navegador.
Qué significa «bonito» en SQL
El SQL legible sigue una maqueta, y la maqueta es información. Las cláusulas principales empiezan en el margen izquierdo, una por línea, para que el ojo descomponga cualquier consulta en un segundo: estas columnas, de estas tablas, filtradas por estas condiciones, agrupadas y ordenadas así. Las condiciones tras la primera se alinean bajo el bloque WHERE en sus propias líneas de AND/OR, porque un OR enterrado al final de una línea de 200 caracteres es el origen de muchos informes equivocados. Las palabras clave en un caso constante — mayúsculas por convención — separan la gramática del lenguaje de los nombres de tus tablas y columnas. Este formateador aplica exactamente esa maqueta, y si el estilo de tu casa es en minúsculas, el interruptor lo cambia.
Un ejemplo resuelto
Toma la consulta del ejemplo, apretada en una línea: select id, name, email from users where age > 30 and city = 'Oslo' order by name. Formateada, se convierte en cinco líneas cortas con la lista de columnas en la línea del SELECT, la tabla en FROM y la segunda condición bien visible en su propia línea AND. El significado no cambia en nada — pero ahora la siguiente persona (a menudo tú, dentro de tres meses, a las 2 de la mañana) ve de un vistazo qué hace y dónde va una condición nueva.
Por qué importa el tokenizador
La manera ingenua de construir un formateador es aplicar expresiones regulares sobre el texto, y falla en cuanto aparece un dato real: reemplaza la palabra «from» y habrás reescrito también la nota de alguien que dice from the where clause. Esta herramienta primero divide la consulta en tokens — palabras, números, puntuación y literales de texto enteros — y formatea el flujo de tokens, así que el texto entrecomillado es carga, nunca código. El mismo cuidado se aplica a los operadores compuestos (>=, <>, !=), que permanecen unidos como deben.
Límites honestos
Un formateador no es un validador: ordenará encantado una consulta que mencione una tabla inexistente, y no reparará una sintaxis realmente rota — formatea lo que se puede tokenizar y deja el resto legible pero con el mismo significado. La sintaxis exótica de algún dialecto (pistas específicas de un fabricante, comillas inusuales) puede no recibir el tratamiento completo de cláusulas; la salida sigue siendo la misma consulta, solo que menos decorada. Y formatear no es optimizar: una consulta lenta muy bonita sigue siendo lenta.
Preguntas frecuentes
¿Qué dialectos SQL soporta?
La maqueta de cláusulas es agnóstica: SELECT/FROM/WHERE/JOIN/GROUP BY/ORDER BY/HAVING/LIMIT se leen igual en MySQL, PostgreSQL, SQL Server, SQLite y BigQuery. Los identificadores entre comillas dobles o acentos graves se tokenizan con seguridad en todos.
¿Cambia lo que hace mi consulta?
No. Solo cambian los espacios y, si quieres, el caso de las palabras clave. El caso es irrelevante para las palabras clave SQL en todos los dialectos principales, y los literales se conservan carácter a carácter, caso incluido.
¿Formatea sentencias INSERT y UPDATE?
Sí: INSERT INTO … VALUES, UPDATE … SET y DELETE FROM reciben el mismo tratamiento de una cláusula por línea.
¿Mi consulta se sube a algún sitio?
No. La tokenización y el formateo ocurren en la pestaña de tu navegador: seguro para consultas que mencionan tablas y columnas internas.
Herramientas relacionadas
English version: SQL Query Pretty Printer — Format SQL Online, Free SQL Formatter. También te puede interesar: Formateador de Arrays JavaScript — Convierte una Lista en un Array JS Online.
Inserta esta herramienta en tu web — gratis
Copia el código de abajo para añadir esta herramienta funcional a tu propia página. Solo pedimos que mantengas el pequeño enlace de crédito que la acompaña.
