












































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
complet cours session 1 semestre 2
Typology: Cheat Sheet
1 / 52
This page cannot be seen from the preview
Don't miss anything!













































Kharbane Yahya/ Johri Mustapha
CRMEF Marrakech-Safi Centre de Préparation à l’Agrégation Département d’informatique Marrakech [email protected]
6 juin 2020
1/
Parfois on peut avoir besoin d’effectuer des traitements (fonctions) sur des partitions de l’ensemble des lignes d’une table selon un critère donné portant sur des colonnes de cette table.
Notation :
A 1 , ..., An γ f 1 (B 1 ), ..., fm(Bm)(R)
3/
On peut faire une sélection après l’agrégation, en ajoutant une condition à laquelle chaque groupe doit répondre.
Notation :
σ condition(A 1 , ..., An γ f 1 (B 1 ), ..., fm(Bm)(R))
4/
Requête SQL :
SELECT A 1 , ..., An, f 1 (B 1 ), ..., fm(Bm) FROM R GROUP BY A 1 , ..., An HAVING condition ;
Avec A 1 , ..., An des colonnes de la table R, et f 1 , ..., fm des fonctions d’agrégation appliquées sur des colonnes B 1 , ..., Bm de la table R
6/
Soit la table :
Eleves (Id , Nom, Prenom, Tel, NoteBac, dateNaissance, classe)
Afficher la note de bac maximale des élèves de chaque classe
6/
Soit la table :
Eleves (Id , Nom, Prenom, Tel, NoteBac, dateNaissance, classe)
Afficher la note de bac maximale des élèves de chaque classe
SELECT MAX (NoteBac) FROM Eleves GROUP BY classe ;
7/
Soit la table :
Eleves (Id , Nom, Prenom, Tel, NoteBac, dateNaissance, classe)
Afficher pour chaque classe le nombre d’élèves, mais seulement pour les classes dont la moyenne de la note du bac est supérieure à 14
SELECT classe, COUNT (*) AS nombreEleves FROM Eleves GROUP BY classe HAVING AVG (NoteBac)>14 ;
8/
Il est possible de trier les données sur une ou plusieurs colonnes :
par ordre ascendant (ASC) par ordre descendant (DESC)
Par défaut les résultats sont classés par ordre ascendant.
10/
Soit la table :
Eleves (Id , Nom, Prenom, Tel, NoteBac, dateNaissance, classe)
Afficher la note de bac moyenne de chaque classe, et trier le résultat par ordre décroissant de la note
10/
Soit la table :
Eleves (Id , Nom, Prenom, Tel, NoteBac, dateNaissance, classe)
Afficher la note de bac moyenne de chaque classe, et trier le résultat par ordre décroissant de la note
SELECT classe, AVG (NoteBac) AS moyenne FROM classe Eleves GROUP BY classe ORDER BY moyenne DESC ;
12/
Exemple : Articles (idArticle, nom, prix)
Afficher les noms des 3 plus chers articles
SELECT nom FROM Articles ORDER BY prix DESC LIMIT 3 ;
13/
Une requête imbriquée est une sous requête exécutée à l’intérieur d’une autre requête SQL.
Elle remplace souvent une constante au sein d’une clause WHERE ou HAVING.
15/
Syntaxe SQL :
DELETE FROM ... WHERE [expression] opérateur ( SELECT... FROM... ) ;
16/
Syntaxe SQL :
INSERT INTO nomTable(colonne1,... .., colonneN) SELECT... FROM... WHERE... ;