Desarrollo
SQL Formatter
Formatea SQL para revisar consultas.
SQL
select id, name FROM users WHERE active = 1 AND role = "admin" ORDER BY name
- Formato orientativo para lectura rápida.
Solo cambiamos el aspecto de la consulta. Lo que hace, y si está bien, es cosa tuya.
SQL Formatter
Reorganiza una consulta SQL con cada cláusula en su línea y la sangría adecuada, para leer y revisar sentencias largas con muchos JOIN y condiciones.
Consultas que llegan sin formato
- Leer la consulta de trescientos caracteres que ha llegado en una sola línea.
- Dejar presentable un SQL antes de pegarlo en una revisión de código.
- Localizar dónde falta un JOIN entre tanto texto seguido.
Formatear no comprueba la consulta
Formatea las cláusulas comunes; revisa el resultado si usas sintaxis específica de tu motor de base de datos. No cambia lo que hace la consulta. La consulta se formatea en local, algo que conviene saber cuando lleva nombres de tablas reales.
Preguntas frecuentes
¿Qué reconoce para partir la consulta?
Doce palabras clave y ni una más: las cláusulas que estructuran una consulta corriente, más las cuatro formas de JOIN. Cada una se lleva un salto de línea delante. Los AND y los OR quedan sangrados dos espacios debajo, que es donde se leen mejor. Lo que no esté en esa lista pasa de largo sin que lo toquemos.
¿Puede estropearme la consulta?
El motor va a ejecutar exactamente lo mismo, porque solo movemos espacios y saltos. Hay un caso en el que el texto sí sale distinto, y conviene tenerlo presente: no distinguimos las cadenas del resto de la sentencia, así que si dentro de unas comillas llevas espacios seguidos o una palabra como ORDER BY, ahí habrá cambios. Los comentarios de dos guiones tampoco sobreviven al colapso de los saltos de línea.
¿Vale para PostgreSQL o para Oracle?
Para leerla, sí, porque las cláusulas básicas se llaman igual en todas partes. La sintaxis propia de cada motor la dejamos pasar intacta, sin partirla, de modo que un CTE largo o un PIVOT de SQL Server se van a quedar apelotonados en su línea. Las subconsultas dentro de paréntesis tampoco se sangran.
¿Me dice si la consulta está bien?
No comprobamos nada. Ni la sintaxis, ni que las tablas existan, ni que el JOIN tenga sentido. Solo cambiamos el aspecto. Ahora bien, ver cada cláusula en su línea suele bastar para que salte a la vista lo que estabas buscando, casi siempre un JOIN sin su condición o un WHERE que se comió una condición por el camino.