Formateador SQL

Formatea consultas SQL con indentación y palabras clave en mayúsculas al instante.

sys-dev-toolkit.lovable.app/herramientas/sql-formatter

Herramienta

SQL formateado

Qué problema resuelve

Las queries de una sola línea son ilegibles al revisar un log o un dump.

Un SQL bien formateado es la diferencia entre un pull request revisable y un muro de texto ilegible. Este formateador aplica un estilo canónico (palabras clave en mayúsculas, indentación por cláusula, alineación de columnas) 100% en el navegador, sin enviar tu consulta a ningún servidor. Pega tu query, obtén una versión limpia lista para pegar en tu repositorio.

Convenciones que aplica

Reserved words en mayúsculas (`SELECT`, `FROM`, `WHERE`, `JOIN`), una cláusula por línea, subconsultas indentadas y comas al principio de línea para facilitar diffs. Es el estilo que promueven guías como la de Simon Holywell y la mayoría de linters SQL modernos (sqlfluff, sql-formatter).

Compatible con varios dialectos

El formateador reconoce sintaxis de PostgreSQL, MySQL, SQL Server, Oracle y SQLite. Preserva funciones específicas (`ILIKE`, `TOP`, `LIMIT`, `RETURNING`), CTEs con `WITH`, ventanas (`OVER`), y expresiones tipo `CASE WHEN`. Nunca reescribe la semántica: solo redistribuye el whitespace.

Cuándo NO auto-formatear

En consultas ad-hoc de la consola no vale la pena. En migraciones versionadas, procedimientos almacenados y views es obligatorio: el diff refleja cambios reales, no reordenamientos. Combínalo con un linter (sqlfluff) en CI para evitar drift entre desarrolladores.

Casos de uso comunes

  • Ordenar queries copiadas de una traza o de un ORM.
  • Preparar SQL para pull request review.
  • Enseñar buenas prácticas a nuevos miembros del equipo.

Referencias oficiales

Preguntas frecuentes

¿Funciona con PostgreSQL, MySQL y SQL Server?

Sí, formatea la sintaxis común. Extensiones específicas (WINDOW, CTEs recursivas) se respetan tal cual.

¿Envía la query a un servidor?

No, todo el formateo ocurre en tu navegador. Puedes pegar SQL con datos sensibles sin riesgo.