SQL peut paraître un peu déroutant pour les débutants. Ci-dessous, quelques conseils pour progresser en douceur dans l’apprentissage de ce langage.
Pratiquez !
Comme c’est souvent le cas en programmation, il est nécessaire de mettre les choses en pratique. Rendez-vous sur studybyyourself.com et faîtes les exercises. Vous pouvez même y refaire les exemples du présent cours.
Schéma de base de données
Comprenez bien le schéma de base de données avant de commencer un exercice. Essayez d’imaginer les données que peuvent contenir chaque table. Portez une attention particulière aux tables liantes (p.ex. Involvement).
Table
Détecter les tables concernées avant de commencer un exercice.
Jointure
Assurez-vous de bien avoir compris la notion de jointure car c’est le concept SQL le plus important.
Sous-groupe
En principe, vous n’avez pas besoin d’utiliser la clause DISTINCT
, laquelle n’a pas expliquée dans le cours. Si vous l’utilisez ça signifie, soit que vous n’avez pas bien compris la notion de sous-groupe, soit que la base de données que vous utilisez n’est pas bien modélisée.
WHERE vs HAVING
WHERE
pose des conditions sur les enregistrements alors que HAVING
pose des conditions sur les sous-groupes dans leur entier.
Ordre d’exécution
Il est très important de garder en tête l’ordre dans lequel les opérations sont effectuées par SQL. D’abord, les tables sont jointes pour former une table agrégée. Seuls les enregistrements de celle-ci satisfaisant les conditions sont retenus (WHERE
). Ensuite, sur la base de ces enregistrements restants, les sous-groupes sont créés (GROUP BY
). Finalement, les conditions sur ces sous-groupes sont vérifiées (HAVING
).