Formateador SQL
Embellece SQL desordenado con sangría uniforme y mayúsculas de palabras clave, en los principales dialectos.
La salida aparecerá aquí
Por qué formatear SQL
El SQL es fácil de escribir en una sola línea larga y penoso de leer así. Una consulta copiada de los registros de una aplicación, de un ORM o de un compañero suele llegar como una cadena continua con mayúsculas inconsistentes y sin sangría. Formatear la reescribe con cada cláusula en su propia línea y las expresiones anidadas con sangría, de modo que la forma de la consulta —qué selecciona, dónde une, cómo filtra— se vuelve visible al instante. Eso facilita revisar, depurar y traspasar consultas, y deja mucho más limpios los diffs en el control de versiones.
Formatear nunca cambia lo que hace una consulta. Solo ajusta los espacios y, opcionalmente, las mayúsculas de las palabras clave. Las sentencias que recuperas son equivalentes a las que pegaste.
Los dialectos y por qué importan
El SQL es una familia de lenguajes muy relacionados más que uno solo. Cada motor de base de datos añade sus propias palabras clave, funciones y sintaxis sobre el estándar. Elegir el dialecto que coincide con tu base de datos ayuda al formateador a reconocer esas construcciones específicas del motor y a disponerlas correctamente. Esta herramienta admite:
- Standard SQL: un buen valor por defecto para consultas portables.
- PostgreSQL: sintaxis y funciones específicas de Postgres.
- MySQL: incluye las convenciones de MySQL y MariaDB.
- SQL Server (T-SQL): Microsoft SQL Server.
- BigQuery: el SQL estándar de Google BigQuery.
- SQLite: la base de datos embebida muy usada en móvil y en apps.
- Oracle (PL/SQL): Oracle Database.
Convenciones de mayúsculas en palabras clave
Una convención de siempre escribe las palabras clave de SQL (SELECT, FROM, WHERE, JOIN) en mayúsculas y los identificadores (nombres de tablas y columnas) en minúsculas, para que las palabras estructurales destaquen sobre tus datos. El control de mayúsculas de palabras clave te permite imponerlo con un clic:
- UPPER: palabras clave en mayúsculas, el estilo de casa más común.
- lower: palabras clave en minúsculas, preferido por algunos equipos y guías de estilo.
- Preserve: deja las mayúsculas exactamente como las escribiste.
El control de sangría (2 espacios, 4 espacios o tabulación) fija cuánto se sangran las cláusulas y subconsultas anidadas, para que coincida con el estilo de tu equipo.
Consejos para un SQL legible
- Formatea antes de la revisión de código: una consulta con una disposición coherente es mucho más fácil de razonar para quien revisa.
- Elige unas mayúsculas de palabras clave y mantenlas en toda tu base de código para diffs coherentes.
- Usa el dialecto que coincide con producción, para que la sintaxis específica del motor no se estropee.
- Formatear es un paso seguro y mecánico: como nunca cambia el comportamiento, puedes aplicarlo con libertad a consultas que aún no entiendes del todo.
Preguntas frecuentes
- ¿Qué dialectos de SQL se admiten?
- Standard SQL además de PostgreSQL, MySQL, SQL Server (T-SQL), BigQuery, SQLite y Oracle (PL/SQL). Elige el que coincida con tu base de datos para que la sintaxis específica del dialecto se formatee correctamente.
- ¿El formateo cambia lo que hace mi consulta?
- No. Formatear solo ajusta los espacios y, si lo eliges, las mayúsculas de las palabras clave. La lógica y los resultados de la consulta no cambian.
- ¿Se envía mi SQL a un servidor?
- No. El formateo se ejecuta por completo en tu navegador. Nada de lo que pegas se sube, así que es seguro formatear consultas que hacen referencia a esquemas o datos sensibles.
- ¿Por qué muestra un error en lugar de formatear?
- El formateador analiza tu SQL primero, así que una sintaxis realmente malformada —paréntesis desequilibrados, sentencias incompletas— no puede disponerse y se reporta en su lugar. Corrige la sintaxis y formatea de nuevo.
- ¿Puede formatear varias sentencias a la vez?
- Sí. Pega varias sentencias separadas por punto y coma y cada una se formateará por turno.
- ¿Pondrá en mayúsculas los nombres de mis tablas y columnas?
- No. La opción de mayúsculas de palabras clave solo afecta a las palabras clave reservadas de SQL. Tus identificadores —nombres de tablas, columnas y alias— se dejan exactamente como los escribiste.