Sous-requetes correlees

Sous-requêtes corrélées

Une sous-requête corrélée est une requête SQL imbriquée qui récupère des données à partir d’une table liée à la table de base.

Objectifs

  • Comprendre les sous-requêtes corrélées
  • Savoir comment utiliser les sous-requêtes corrélées dans SQL

Exemple

SELECT EMPLOYEES.nom, DEPARTMENTS.department_name FROM EMPLOYEES INNER JOIN DEPARTMENTS ON EMPLOYEES.department_id = DEPARTMENTS.id WHERE DEPARTMENTS.id = (SELECT department_id FROM DEPARTMENTS WHERE nombre_employes > 50)

Exercice

Écrivez une requête SQL qui retourne le nom des employés et leur département ainsi que le nombre total d’employés par département en utilisant une sous-requête corrélée.

Solution (cliquer pour afficher)

Afficher la solution
SELECT EMPLOYEES.nom, DEPARTMENTS.department_name, COUNT(EMPLOYEES.id) as nombre_total FROM EMPLOYEES INNER JOIN DEPARTMENTS ON EMPLOYEES.department_id = DEPARTMENTS.id GROUP BY EMPLOYEES.department_id

Pour aller plus loin

  • Conseil : Utilisez les sous-requêtes corrélées avec précaution pour éviter la surcharge de la requête SQL.
  • Le pouvoir des sous-requêtes corrélées est qu’elles permettent de regrouper plusieurs requêtes SQL en une seule et ainsi d’obtenir une plus grande efficacité

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut