Sélectionner les données
SELECT FROM
SELECT * FROM t1 (toutes les colonnes)
SELECT c1,c2 FROM t1 (sélection des colonnes c1 et c2)
SELECT DISTINCT c1 FROM t1 (élimine les doublons : ne ramène qu’une valeur pour la colonne c1)
SELECT c1 AS "colonne1" FROM t1 (renommer une colonne)
Restreindre la sélection
SELECT * FROM t1 WHERE
SELECT * FROM t1 WHERE c1 IN (’01’,’02’,’04’)
SELECT * FROM t1 WHERE c2 NOT BETWEEN 10 AND 15
SELECT * FROM t1 WHERE c3 IS NULL
SELECT * FROM t1 WHERE c3 IS NOT NULL
>, >=, <, <=, =, <>, (comparateur arithmétiques)
AND, OR, NOT, (comparateur logique)
% (n’importe quelle séquence de car.)
_ (soulignement) (n’importe quel caractère)
Trier et présenter les résultats
SELECT * FROM t1 ORDER BY c1 (tri ascendant par défaut)
SELECT * FROM t1 ORDER BY c2,c4 (tri par c2 puis tri par c4)
SELECT * FROM t1 ORDER BY c1 ASC, c3 DESC (tri ascendant ou descendant)
Exprimer les jointures
SELECT * FROM t1,t2 (jointure sans qualification = produit cartésien)
SELECT * FROM t1,t2 WHERE t1.c1 = t2.c2 (jointure avec égalité)
SELECT * FROM t1 a,t2 b,t3 c WHERE a.c1=b.c2 AND b.c2=c.c3 (jointures en cascades)
Manipuler les données
SELECT c1,c2*3.25 AS "PRIX" FROM t1
YEAR, MONTH, DATE (date)
SUBSTRING, UPPER, LOWER, CHARACTER_LENGTH (manipulation de chaînes de car.)
Les fonctions statistiques
AVG (moyenne)
COUNT (nombre d’éléments)
MAX (maximum)
MIN (minimum)
SUM (somme)
SELECT COUNT(*)FROM t1
SELECT SUM(c1) FROM t2
Regroupements
SELECT * FROM t1 GROUP BY c1
Sous-requêtes SQL
SELECT * FROM t1 WHERE c1 > (SELECT MIN(c1 FROM t2)
SELECT * FROM t1 WHERE c2 NOT IN (SELECT c2 FROM t2)
SELECT * FROM t1 WHERE c1 > ALL (SELECT c2 FROM t2) (sup. à toutes les valeurs)
SELECT * FROM t1 WHERE c1 > ANY (SELECT c2 FROM t2) (sup. à au moins 1)
Opérateurs ensemblistes
Ils s’intercalent entre deux sélections
UNION (sans les doublons) ou UNION ALL (y compris les doublons)
INTERSECT à partir de la v5r3
EXCEPT à partir de la v5r3
Insérer des enregistrements
INSERT INTO t1 VALUES (’abc’,5,7) (toutes les valeurs doivent être renseignées)
INSERT INTO t1(c1,c2) VALUES (1, ’ROUGE’) (on ne renseigne que les colonnes indiquées, les colonnes non précisées sont mises à NULL ou à la valeur par défaut si elle est précisée)
INSERT INTO t1 SELECT * FROM t2
Mises à jour d’enregistrement
UPDATE t1 SET c2=’ROUGE’ WHERE c1=1
Supprimer des enregistrements
DELETE FROM t1 WHERE c1=1
DELETE FROM t1 WHERE c1 IN (SELECT c2 FROM t2)
DELETE FROM t1 (supprime tous les enregistrements de la table t1)