Acerca de SQL Format

SQL Format es un formateador de SQL en línea y gratuito, acompañado de un conjunto de guías sobre cómo escribir SQL legible. Esta página explica quién lo mantiene, por qué existe, cómo funciona el formateador y cómo ha cambiado el proyecto con el tiempo.

Quién mantiene SQL Format

SQL Format es creado y mantenido por administradores de bases de datos y desarrolladores. Las reglas de formateo vienen del trabajo diario con bases de datos en producción: revisar consultas antes de que lleguen a producción, leer logs de consultas lentas, rastrear una migración que falló a mitad de camino y explicarle un plan de ejecución al desarrollador que escribió la consulta. Esas tareas son mucho más fáciles cuando todas las consultas de un código base tienen la misma forma, y para eso existe el formateador.

Las guías de este sitio están escritas desde el mismo punto de vista. Se centran en convenciones que se sostienen en la revisión de código y en el control de versiones.

Por qué existe

La mayor parte del SQL se escribe con prisa: en una consola de consultas, dentro de una cadena en el código de la aplicación o generado por un ORM y copiado de un log. Termina en una sola línea larga, o con la sangría que el editor del autor haya usado. Leer ese SQL durante un incidente o una revisión cuesta tiempo, y discutir su formato en los pull requests cuesta todavía más.

Un formateador resuelve la cuestión del formato de una vez. Pegas la consulta, eliges unas pocas opciones que coincidan con el estilo de tu equipo y recibes una versión en la que cada cláusula empieza en su propia línea, los joins y las condiciones están alineados y el anidamiento se ve de un vistazo. La guía sobre formateo para revisión de código y control de versiones explica por qué un formato consistente también hace los diffs más pequeños y las revisiones más rápidas.

También queríamos un formateador que respetara tus datos. Tu SQL se formatea en memoria y se devuelve. No se almacena, no se registra en logs ni se pasa a socios de analítica o publicidad, y no hay que crear ninguna cuenta. La página de privacidad tiene los detalles.

Cómo funciona el formateador

El formateador se ejecuta en nuestro servidor. Su motor fue portado de un formateador anterior escrito en Python. Cuando presionas Formatear, trabaja en tres grandes pasos:

  1. Divide el SQL en tokens: reconoce palabras clave, nombres, literales, operadores, comentarios y signos de puntuación, de modo que los literales de cadena, los identificadores entre comillas y los comentarios pueden quedar exactamente como los escribiste, y los operadores de varios caracteres, como ->> o ::, se mantienen en una sola pieza.
  2. Organiza las cláusulas: cada cláusula principal, como SELECT, FROM, WHERE, GROUP BY y ORDER BY, empieza una nueva línea, los elementos del select van uno por línea, los joins llevan sangría debajo de FROM y cada condición AND u OR tiene su propia línea.
  3. Aplica sangría a los bloques anidados: las subconsultas, las expresiones CASE y los cuerpos de funciones de PostgreSQL llevan un nivel más de sangría que el código que los rodea.

Cinco opciones controlan el resultado: espacios de sangría, cantidad máxima de columnas, posición de las comas, mayúsculas/minúsculas de las palabras clave y paréntesis en nueva línea. El formateador está diseñado para cambiar solo espacios en blanco, saltos de línea y mayúsculas/minúsculas de las palabras clave, pero igual debes revisar la salida antes de ejecutarla, como harías con cualquier herramienta que reescribe código. Las preguntas frecuentes cubren los detalles.

Los ejemplos de este sitio

Siempre que una guía o página de documentación muestra una consulta "después, formateada por SQL Format", esa salida fue producida por el mismo motor que ejecuta el formateador, con las opciones indicadas en su leyenda. Puedes pegar la versión "antes" en el formateador con esas opciones y obtener el mismo resultado. Los ejemplos que ilustran un estilo escrito a mano, un error que conviene evitar o la sintaxis de otro dialecto se muestran como código simple y no se identifican como salida del formateador.

Historia del proyecto

Un breve resumen de cómo se ha desarrollado el sitio. El registro de cambios tiene la lista completa.

  • Versión 0.0.1 (septiembre de 2026). SQL Format como sitio independiente: el formateador con sus cinco opciones, las páginas de contacto y de privacidad, un tema claro y uno oscuro, y la interfaz en dieciséis idiomas.
  • Versión 2.0.1. Una página del formateador reconstruida con una barra de opciones, un editor con números de línea, botones Copiar y Limpiar, una barra de estado y el atajo Ctrl+Enter, además de mejoras de formato para ORDER BY y GROUP BY.
  • Versión 2.3. Un banner de cookies con la opción de aceptar todas las cookies o solo las esenciales, una página de privacidad más completa, la interfaz abriéndose en el idioma de tu navegador en la primera visita y 4 espacios como sangría predeterminada.
  • Versión 2.4. Guías de estilo SQL, documentación de cada opción, esta página Acerca de, las preguntas frecuentes, los términos de uso y el registro de cambios, además de direcciones específicas por idioma, como /pt-br/ y /es/. La versión 2.4.1 corrigió una serie de detalles de formato, desde NOT EXISTS y las comas al inicio hasta los nombres entre comillas y los operadores de PostgreSQL.

Contacto

Las preguntas, los problemas de formateo y las sugerencias son bienvenidos a través de la página de contacto. Si vas a reportar un resultado de formateo que no esperabas, incluye una consulta pequeña que lo muestre y las opciones que usaste, sin nombres confidenciales.