Bases de données et SQL
Organiser des données relationnelles et les interroger avec les principales commandes SQL.
Modèle relationnel
Tables et attributs
Une table est un ensemble de lignes et de colonnes représentant une entité ou un lien.
- Les lignes sont des occurrences de l’entité.
- Les colonnes sont ses propriétés.
Clés et relations
Clé primaire
- Identifie une ligne.
- Est unique.
- Ne doit pas être nulle.
Clé étrangère
- Référence une autre table.
- Crée le lien entre tables.
- Peut être répétée.
Sélectionner avec SQL
Mots-clés de base
SELECTchoisit les colonnes affichées.FROMindique la table source.
Mémo
SELECT puis WHERE : on choisit d’abord, on filtre ensuite. Ne pas confondre colonnes affichées et lignes gardées.
Relier et résumer les données
Jointures
| Mot-clé | Rôle | Idée-clé |
|---|---|---|
JOIN | Combine des lignes de tables | Il s’appuie sur une condition de jointure. |
INNER JOIN | Garde seulement les correspondances. | Il conserve les lignes qui ont une correspondance. |
Agrégats et regroupement
GROUP BY rassemble les lignes qui partagent une même valeur.
- COUNT, SUM, AVG, MIN et MAX résument ensuite chaque groupe.
Pièges fréquents
- Sans condition de jointure,
JOINpeut produire trop de lignes. - Une colonne non agrégée doit être cohérente avec
GROUP BY.
Normalisation intuitive
Une base contient élèves, cours et inscriptions dans une seule table répétant les mêmes noms.
- Séparer les élèves dans une table Élèves.
- Séparer les cours dans une table Cours.
- Créer une table Inscriptions pour relier les deux.
On réduit les répétitions et on limite les anomalies de mise à jour.
Ce qu’il faut viser
- Éviter les redondances inutiles.
- Limiter les anomalies de mise à jour.
Mini-défi
Une table, une idée : si tu répètes beaucoup d’informations, pense à découper.
À retenir
- Les tables structurent les données en lignes et colonnes.
- Les clés identifient et relient les tables.
SELECT,WHERE,JOINetGROUP BYcouvrent l’essentiel.- Les agrégats résument les groupes.
