|
Définition
Language de requêtes pour les SGBD relationnels (Standard développé par ANSI et adopté par ISO/IEC 1986).
Expressions de base
| PROJECTION |
| |
SELECT * | |
| |
FROM COMMANDES |
| |
| |
SELECT NUM, CNom, PNom, Quantite | |
| |
FROM COMMANDES |
| |
| |
SELECT DISTINCT NUM, CNom, PNom, Quantite | |
| |
FROM COMMANDES |
| |
| SELECTION |
| |
SELECT PNOM | |
| |
FROM COMMANDES |
| |
WHERE CNOM = ’JEAN’ |
| |
Opérateurs : AND, OR |
|
|
Comparateurs : =, <, >, <>, BETWEEN, LIKE, IS NULL, IN |
| |
| JOINTURE |
| |
SELECT C.PNom, Cout, FNom | |
| |
FROM COMMANDES as C, PRIX as P |
| |
WHERE CNom = ’JEAN’ AND C.PNom = P.PNom |
Expressions Ensemblistes
| UNION |
| |
SELECT PNom FROM PRIX WHERE COUT >= 100 | 
|
| |
UNION |
| |
SELECT PNom FROM Commandes WHERE CNom = ’JEAN’ |
| |
| DIFFERENCE |
| |
SELECT DeptNo FROM DEPARTEMENT | 
|
| |
EXCEPT |
| |
SELECT DeptNo FROM EMPLOYE |
| |
| INTERSECTION |
| |
SELECT DeptNo FROM DEPARTEMENT WHERE Loc = ’Paris’ | 
|
| |
INTERSECT |
| |
SELECT DeptNo FROM EMPLOYE WHERE Sal
aire > 20000 |
Imbrication des requêtes
| S F W PNom IN (SELECT DISTINCT B ...) Liste des A inclus dans B |
| S F W DEPNO NOT IN (SELECT DISTINCT B ...) Liste des A sans B |
| S F W DEPNO < ANY (SELECT DISTINCT B ...) Liste des A inférieurs à n’importe quel éléments de B |
| S F W DEPNO <= ALL (SELECT DISTINCT B ...) Liste des A inférieur à tous les B |
| S F W DEPNO NOT = ALL (SELECT DISTINCT B ...) Liste des A sans B |
| S F W DEPNO EXISTS (SELECT DINSTINCT B ...) Liste des A existant dans B |
Fonctions de calculs
| COUNT Compte les n-uplets |
| SUM Addition de valeurs |
| AVG Réalise une moyenne (coût moyen) |
| MIN Si inférieur à |
| GROUP BY Groupé par ... |
| HAVING ex : HAVING COUNT(*) >= 2 ayant une valeur supp à 2 |
Division
| FOURNITURE (FNUM, PNUM, QUANTITE) |
| PRODUIT (PNUM, PNOM, COUT) |
| FOURNISSEUR (FNUM, FNOM, STATUS, VILLE) |
| |
| Requête : Fournisseurs qui fournissent tous les produits |
| |
| SELECT FNOM |
| FROM FOURNISSEUR |
| WHERE NOT EXISTS |
| |
(SELECT * |
| |
FROM PRODUIT |
| |
WHERE NOT EXISTS |
| | |
(SELECT * |
| | |
FROM FOURNITURE |
| | |
WHERE FOURNITURE.FNUM = FOURNISSEUR.FNUM |
| | |
AND FOURNISSEUR.PNUM = PRODUIT.PNUM)) |
|