Table dérivée (sous-requête) avec MySQL

MySQL a ajouté le support pour les tables dérivées (également appelées sous-requête). En termes très simples, une table dérivée est une table virtuelle renvoyée à partir d’une instruction SELECT. Ce concept est similaire aux tables temporaires, mais l’utilisation de tables dérivées dans vos instructions SELECT est beaucoup plus simple, car elles ne nécessitent pas toutes les étapes que nécessitent les tables temporaires.
 
 
L’image suivante illustre une requête qui utilise une table dérivée:
 

 

Exemple:

Dans l’exemple ci-dessous, nous avons deux tables, à savoir « Clients » et « Commandes », qui contiennent les données suivantes:
 

 

 
Liste des commandes MySQL

Select AVG(T) 
FROM(
  SELECT NumCommande, SUM(Totale) T 
  FROM Commandes 
  GROUP BY NumCommande
)AS totales;


 
La table dérivée ci-dessus renvoie le prix total de chaque commande, puis la requête externe renvoie la moyenne.

Nous devons obligatoirement fournir un alias pour toutes les tables dérivées. Dans ce cas, nous avons donné à notre table dérivée l’alias « totales ».

Si nous n’exécutons que la sous-requête, nous pouvons voir le résultat de la table dérivée.

SELECT NumCommande, SUM(Totale) T 
FROM Commandes 
GROUP BY NumCommande;


Questions techniques sur MYSQL

Laisser un commentaire

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