Yo diría que las cosas principales son:
- comprender la naturaleza basada en el conjunto de SQL leyendo libros plataforma neutral como Celko's; esto lo ayudará a evitar cometer errores novatos, como usar cursores (u otros enfoques iterativos) donde no se necesiten.
- Aprenda los conceptos básicos de la normalización y cuándo desnormalizar; las consultas eficientes comienzan con datos bien organizados.
- Comprender dónde los índices pueden ser útiles y donde no pueden; por ejemplo, comprender cómo la cardinalidad de sus datos afecta la eficiencia del índice, qué son las consultas de SARGable y cuándo usar índices de varias columnas.
- Aprenda a usar EXPLAIN PLAN o su equivalente para su plataforma; al observar cómo se está compilando su consulta y los recursos que está consumiendo, comprenderá mejor los cuellos de botella.
- Conozca los métodos específicos de la plataforma, como las vistas indexadas/materializadas, la indexación de texto completo y los métodos para buscar y tratar datos jerárquicos.
¿Qué es argumentativo sobre esto? –
¿No debería ser esta wiki de la comunidad, como preguntas como "¿Qué libro es un comentario para C?" – fuz
¿Está interesado principalmente en la optimización de consultas SQLServer u optimización para otros DBMS también? Las técnicas tienden a variar entre los dialectos de SQL. –