Les requêtes SQL complexes peuvent rapidement devenir un cauchemar à maintenir et souffrir de graves problèmes de performances.
Pourtant, bien écrites et optimisées elles permettent d’obtenir de manière synthétique et efficace des données structurées.
Ma première approche est d’avoir une compréhension aussi extensive que possible du but et des données de la requête.
Ensuite viennent l’écriture et l’optimisation de la requête elle-même en utilisant au maximum les index existant, la plupart des systèmes n’autorisant l’ajout d’index qu’à la marge.
Enfin, point souvent négligé, la structuration et l’écriture de commentaires dans la requête elle-même rendent sa compréhension future et sa maintenance beaucoup plus aisées. La personne en charge des évolutions dans 6 mois dira merci !
Oracle et SQL Server permettent de faire des requêtes SQL très complètes et très complexes qui obligent à une écriture bien structurée et réfléchie. Sous MySQL, l’étape optimisation est quasi obligatoire.