Formateador SQL

Mejora la lectura de SELECT y JOIN con saltos de línea en palabras clave.

Descripción

SQL (Structured Query Language) fue creado en 1974 por Donald D. Chamberlin y Raymond F. Boyce en los laboratorios de IBM, inspirado en el modelo relacional propuesto por Edgar F. Codd en 1970. El objetivo era un lenguaje de consulta declarativo: dices qué quieres, no cómo obtenerlo. Décadas después, SQL sigue siendo el lenguaje más influyente de la informática que casi todo programador ha necesitado en algún momento — sea en una entrevista de trabajo o en un proyecto real. IBM lanzó la base de datos System R con SEQUEL (luego renombrado SQL) a mediados de los años 70, y Oracle fue uno de los primeros proveedores comerciales. Hoy tenemos PostgreSQL, MySQL, SQLite, SQL Server y BigQuery — cada uno con dialectos ligeramente distintos, pero el núcleo del lenguaje es reconocible en todos.

La legibilidad del SQL es un debate recurrente en los equipos de ingeniería. Una query escrita de cualquier manera — `select id,name from users where active=1 and type='admin' order by name` — hace el mismo trabajo que una bien indentada con palabras clave en mayúsculas y cláusulas en líneas separadas. Pero revisar SQL en pull requests, depurar consultas lentas en un explain plan o simplemente entender la lógica de una query que escribió otra persona se vuelve mucho más fácil cuando el SQL está formateado. La indentación visual de JOINs, condiciones WHERE y subconsultas reduce errores de lectura y facilita identificar problemas lógicos.

En la práctica, el SQL formateado también importa para el control de versiones. Cuando dos personas editan el mismo procedimiento almacenado o migración con estilos de formato distintos, los diffs se contaminan con cambios cosméticos que ocultan los cambios reales. Los equipos que adoptan una convención única de formateo — usando herramientas como `sqlfluff`, `pgFormatter` o los formateadores integrados en el IDE — tienen revisiones de código mucho más productivas. Para proyectos pequeños o scripts puntuales, un formateador online como este resuelve el problema sin ninguna configuración.

Esta herramienta aplica formateo basado en palabras clave: saltos de línea antes de SELECT, FROM, WHERE, AND, OR, ORDER BY, GROUP BY, JOIN y sus variantes, con sangría consistente. No es un formateador con análisis completo de AST como `sqlfluff` — no valida sintaxis ni sugiere optimizaciones — pero cumple bien la función de convertir SQL compacto en una forma mucho más legible en segundos. Para sintaxis específica de dialectos como los operadores de arrays o JSON de PostgreSQL, los resultados en partes propietarias pueden necesitar ajuste manual.

Detalle técnico

Ideas claras antes de usar la herramienta

  • ¿Para qué sirve esta herramienta?: Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.
  • ¿Se envían mis datos a algún servidor?: El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.
  • ¿Puedo usarlo con datos reales en producción?: Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.

Fragmento corto para probar

  • Debajo aparece también el ejemplo largo en "Fragmentos de Código"; pega esta versión corta: Antes y después — select id,name from users where active=1 order by name

Guía de la herramienta

  • Qué es SQL Lenguaje declarativo para consultar y modificar datos en bases relacionales (SELECT, INSERT, JOIN, etc.).

  • Qué hace la herramienta Inserta saltos de línea alrededor de palabras clave habituales para leer consultas con más facilidad.

  • Por qué usarla Leer SQL en una sola línea desde logs, preparar ejemplos para wiki. Los proyectos grandes suelen usar formateadores del editor o de CI.

Fragmentos de Código

Ejemplo de código
select id,name from users where active=1 order by name

Antes y después

select id,name from users where active=1 order by name

Preguntas frecuentes

¿Para qué sirve esta herramienta?

Funciona por completo en tu navegador: sirve para validar, formatear o convertir datos en el día a día.

¿Se envían mis datos a algún servidor?

El procesamiento es local con JavaScript. No almacenamos lo que pegas en los campos de texto.

¿Puedo usarlo con datos reales en producción?

Úsalo bajo tu responsabilidad. Para secretos (contraseñas, tokens), prefiere entornos controlados y políticas internas. Recuerda de revisar los contenidos generados. Nunca confies ciegamente en cosas que ves en internet.