Projection☘
La projection consiste à ne conserver que certaines colonnes (attributs) dans le résultat de la requête :
1 2 | |
Vocabulaire
La commande SELECT correspond à une opération de projection, pas de
sélection...
Exemple☘
On considère la table Confitures dont les enregistrements sont
donnés ci-dessous :

Écrire une requête qui recherche et renvoie les stocks pour chaque référence.
Une réponse
1 2 | |
Résultat de la requête

Cas particuliers :☘
-
Pour projeter sur l’ensemble des colonnes de la table, on peut utiliser le caractère «
*» :1 2
SELECT * FROM nom_table ; -
Lors de l’opération de projection, des enregistrements « doublons » peuvent apparaître. On évite ces doublons en utilisant le mot-clef
DISTINCT.
Exemple☘
La table Confitures

Écrire une requête qui renvoie les parfums des confitures vendues.
Une réponse
1 2 | |
Résultat de la requête

Opérations sur les colonnes☘
On peut utiliser des opérations arithmétiques ou des fonctions d’agrégation pour projeter des données sur des colonnes supplémentaires, construites à partir des colonnes d’origine des tables :
1 2 | |
Pour améliorer l’affichage et la compréhension, il est possible de créer un
alias (renommer) une telle colonne avec le mot-clef AS :
1 2 | |
Fonctions d’agrégation :☘
Voici les fonctions d'agrégation les plus usuelles :
MIN(a): renvoie la plus petite valeur de la colonnea.MAX(a): renvoie la plus grande valeur de la colonnea.SUM(a): calcule la somme des valeurs de la colonnea.AVG(a): calcule la moyenne des valeurs de la colonnea.COUNT(a): renvoie le nombre de lignes (nonNULL) de la colonnea.
Important
Pour renvoyer le nombre d’enregistrements de la table, on saisit la commande :
1 2 | |
Exemples☘
La table Confitures

-
Écrire une requête qui renvoie le nombre de pots de confiture en stock.
Une réponse
1 2
SELECT SUM(stock) AS nb_de_pots FROM Confitures;Résultat de la requête

-
Écrire une requête qui renvoie le prix moyen d’un pot de confiture.
Une réponse
1 2
SELECT AVG(prix_unit) AS prix_moyen FROM Confitures;Résultat de la requête

-
Écrire une requête qui renvoie le nombre de parfums différents.
Une réponse
Un exemple sans renommer la colonne résultat :
1 2
SELECT COUNT(DISTINCT fruit) FROM Confitures;Résultat de la requête
