Bases de données et interaction
Révisions de SQL
Requêtes de consultation
SELECT <liste d’attributs>
FROM <liste de relations>
WHERE <condition> ;
Jointure entre deux relations
FROM <table1> JOIN <table2> ON <attributs>
FROM <table1>, <table2> WHERE attribut1 = attribut2
Conditions dans le where
Comparaisons entre attributs, ou entre attributs et valeurs
WHERE A = B
WHERE A > 10
WHERE A IN ( <liste de valeurs> )
WHERE A = ( SELECT … ) si la sous-sélection doit retourner une seule valeur
WHERE A IN ( SELECT … ) si la sous-sélection doit retourner plusieurs valeurs
WHERE A BETWEEN X AND Y
WHERE A LIKE ‘%TOTO’ (se termine par TOTO)
WHERE A LIKE ‘_A%’ (2ème lettre est A)
WHERE A IS NULL
WHERE A IS NOT NULL
WHERE A > ANY ( SELECT … )
WHERE A < ALL ( SELECT … )
Ordonnancement des résultats
ORDER BY <liste d’attributs> [ ASC | DESC ]
Agrégation, fonctions de groupe pour faire des calculs
SUM, COUNT, AVG, MIN, MAX
Exemple : SELECT AVG(note) FROM EXAMEN;
GROUP BY <liste d’attributs>
Exemple : SELECT matiere, AVG(note) FROM EXAMEN GROUP BY matiere;
Condition sur le regroupement
HAVING <condition>
Exemple : HAVING AVG(note) > 10
M1 Info 2005 / 2006 — Université d’Angers — Bases de données et interaction — Révisions de SQL 1
Requêtes de manipulation des relations et des données
Création d’une relation
CREATE TABLE <nom_table> (<att1> <type1>, … , <attn> <typen>);
Contraintes sur les données
Clé
PRIMARY KEY (<liste d’attributs>)
Clé étrangère
FOREIGN KEY (<liste d’attributs>)
REFERENCES ( <table étrangère> ( <liste d’attributs> ) )
Contrainte de valeur
CONSTRAINT <nom_contrainte> ( CHECK <attribut> IN (…) )
Mise à jour d’une relation
UPDATE <table> SET <attribut> = <valeur> WHERE <condition>
Modification de relations
Suppresion d’un attribut :
ALTER TABLE <nom_table> DROP <attribut>
Ajout d’un attribut :
ALTER TABLE <nom_table> ADD ( <attribut> <type> )
Modification d’un attribut :
ALTER TABLE <nom_table> MODIFY <attribut> <type>
Suppresion d’une contrainte:
ALTER TABLE <nom_table> DROP CONSTRAINT <nom_contrainte>
Suppression d’une relation
DROP TABLE <nom_table>
Insertion de n-uplets
INSERT INTO <table> VALUES (<liste de valeurs>)
INSERT INTO <table> SELECT …
Exemple
INSERT INTO A (x, y, z) VALUES (valx, valy, vaz) ;
INSERT INTO A (x, y, z) SELECT x2, y2, z2 FROM B [WHERE …];
Suppression de n-uplets :
DELETE FROM <table> WHERE <condition>
M1 Info 2005 / 2006 — Université d’Angers — Bases de données et interaction — Révisions de SQL 2