PaliSkill
SQL Intermédiaire

Leçon 8 / 9 — Chapitre 9: Mise en pratique : clinique

Index sur la table de liaison

Comme au chapitre 7, il faut identifier quelles colonnes bénéficient réellement d'un index — et repérer celles qui en ont déjà un, sans le savoir.

prescriptions a pour clé primaire composite (consultation_id, medicament) : d'après la leçon sur les index composites du chapitre 7, sa première colonne, consultation_id, reste exploitable seule par l'index automatique de cette clé primaire. Un index supplémentaire dessus serait donc redondant.

consultations.patient_id, en revanche, est une clé étrangère indépendante de la clé primaire de consultations (qui porte sur id) : comme vu au chapitre 7, elle ne bénéficie d'aucun index automatique sous PostgreSQL.

CREATE INDEX idx_consultations_patient ON consultations(patient_id);
-- pas d'index supplémentaire nécessaire sur prescriptions.consultation_id :
-- déjà couvert par la première colonne de la clé primaire composite.

À retenir :

  • La première colonne d'une clé primaire composite reste exploitable seule par l'index automatique de cette clé — inutile de la réindexer.
  • Une colonne de clé étrangère qui n'est pas la première colonne d'une clé primaire composite reste, elle, à indexer manuellement si nécessaire.

À vous de jouer : prescriptions.medicament, seconde colonne de la clé composite, bénéficie-t-elle de la même façon de cet index automatique pour un filtre portant sur elle seule ?

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 80 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès