SQL – Syntaxe de base – requêtes Sélection

Dans cet article, nous parlerons de la syntaxe du langage SQL plus en détail.

C'est le deuxième article dans une série de 4 :

  1. SQL - Notions de base
  2. SQL - Syntaxe de base - requêtes Séléction
  3. SQL - Syntaxe des requêtes action
  4. SQL - Les Jointures

Chaque instruction SQL commence par une commande :

  • SELECT sélectionne des enregistrements dans une ou plusieurs tables. Cela s'appelle une requête sélection.
  • INSERT INTO ajoute un enregistrement dans une table. C'est une requête ajout.
  • UPDATE met à jour des champs dans un ou plusieurs enregistrements. On crée une requête mise à jour.
  • DELETE supprime un ou plusieurs champs dans une table. Cette commande permet de faire une requête suppression.

Les requêtes UPDATE, DELETE, INSERT INTO sont parfois appelées des REQUÊTES ACTION. Cet article traite des requêtes SELECTION. Les autre requêtes sont décrites dans l'article SQL - Syntaxe des requêtes Action.

Dans une requête SELECTION, on peut afficher, trier, regrouper et filtrer les données. Voici les différentes syntaxes :

Pour afficher simplement :

SELECT champ1, champ2, champ3 FROM table

Pour trier, on ajoute une clause 'ORDER BY champ' après le nom de la table. Il faut trier avec un champ comme ceci

SELECT champ1, champ2, champ3 FROM table ORDER BY champ1

Si on veut trier par ordre décroissant, il faut mettre DESC après la clause ORDER BY :

SELECT champ1, champ2, champ3 FROM table ORDER BY champ1 DESC

DESC est l’abréviation de DESCENDING, qui veut dire Décroissant en anglais. Croissant se dit ASCENDING - dont l'abréviation est ASC. On n'a pas besoin de mettre ASC dans une instruction car c'est l'ordre de tri par défaut!

Pour filtrer la sélection, on ajoute une autre clause - une clause "WHERE" cette-fois ci. Voici un exemple :

SELECT nom, prenom FROM stagiaires WHERE nom = "DURAND"

Vous avez compris? On sélectionne le nom et le prénom de tous les enregistrements où (WHERE) le nom est égal à DURAND.

Pour les regroupements, c'est un petit peu plus compliqué! Il faut finir l'instruction par "GROUP BY champ1, champ2 etc." qui dénote le ou les champs sur le(s)quel(s) nous voulons faire. Ensuite, dans la liste des champs à sélectionner, il faut appliquer une fonction de regroupement sur un champ. Voici quelques champs de regroupement utiles :

  • COUNT() pour compter le nombre de regroupements effectués. C'est l'équivalent de faire l'opération "compte" dans votre requête Access.
  • SUM() pour additionner les valeurs du champ. Cela ne marchera que sur des champs numériques.
  • MAX(), MIN(), AVG() renvoient respectivement la valeur maximale, minimale et moyenne des enregistrements regroupés.

Un exemple de regroupement :

SELECT prenom, COUNT(prenom) AS nb_prenoms FROM stagiaires GROUP BY prenom ORDER BY COUNT(prenom) DESC

Ici, on crée une requête de 2 colonnes, la première colonne contient une liste de prénoms uniques et la deuxième le nombre de stagiaires qui portent ce prénom dans la table. Les prénoms sont triés par ordre de popularité (le nombre d’occurrences du prénom par ordre décroissant) . La première colonne va s'appeller "prenom" et la deuxième sera renommée "nb_prenoms" car on a créé un alias avec "AS".

Le prochain article traite de la syntaxe des requêtes INSERT INTO, UPDATE et DELETE.

  1. SQL - Notions de base
  2. SQL - Syntaxe de base - requêtes Séléction
  3. SQL - Syntaxe des requêtes action
  4. SQL - Les Jointures
Ce contenu a été publié dans ACCESS 2007, Cours, avec comme mot(s)-clé(s) , , , , , , , , , , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire