alias de tabla y consistencia sencilla le conseguirán un largo camino largo,
Lo que se ve decente es unas líneas de ruptura en las palabras clave principales SELECT, FROM, WHERE (etc.).
Las uniones pueden ser más complicadas, al marcar la parte ENCENDIDA de las uniones se saca la parte importante de la misma al frente.
Rompiendo expresiones lógicas complicadas (une y donde condiciones ambas) en el mismo nivel también ayuda.
sangría lógicamente el mismo nivel de declaración (subconsultas, la apertura de los soportes, etc.)
mayúsculas todas las palabras clave y funciones estándar.
SQL realmente complejo no va a rehuir los comentarios, aunque por lo general los encuentras en scripts SQL no en SQL dinámico.
ejemplo EDIT:
SELECT a.name, SUM(b.tax)
FROM db_prefix_registered_users a
INNER JOIN db_prefix_transactions b
ON a.id = b.user_id
LEFT JOIN db_countries
ON b.paid_from_country_id = c.id
WHERE a.type IN (1, 2, 7) AND
b.date < (SELECT MAX(date)
FROM audit) AND
c.country = 'CH'
Así, al final, para resumir, - importa la coherencia de la mayoría.
¿qué plataforma? Hay complementos para SSMS y MySQL Workbench que "embellecerán" su código SQL por usted. –
Buena pregunta. Aún no he encontrado una regla de formato convincente para SQL. –
@Brian Driscoll, ¿qué plugings conoces para MySQL Workbench? – dcarneiro