Logo Bases de données
Français     English

Applications des Bases de Données en Sciences Humaines et Sociales

Introduction


SQL : Projection, sélection

Projection

L'opération de projection consiste à choisir le nom des colonnes de la (ou des) table(s) que l'on souhaite voir apparaître dans la réponse. Si l'on veut afficher toutes les colonnes, il faut utiliser "*". Les colonnes sont données après la clause SELECT.

- Afficher le Nom et le code sexe des étudiants.

SELECT Nometu, Cdsexe
FROM ETUDIANT;

- Afficher le Contenu de la table ETUDIANT

SELECT *
FROM ETUDIANT;

Tester les exemples

Sommaire SQL

Q01 : Afficher le Nom le numéro et date de naissance des étudiants

Sommaire SQL

Sélection

L'opération de sélection consiste à sélectionner des lignes (n-uplets, tuples) d'une (ou plusieurs) table(s) qui satisfont certaines conditions. Les conditions sont exprimées après la clause WHERE.

- Afficher la liste des étudiants de sexe masculin.

SELECT
FROM ETUDIANT
WHERE Cdsexe='H';

Q02 : Liste des enseignants qui ont plus de 2 ans d'ancienneté dans le grade.

Sommaire SQL

Projection et Sélection

Les opérations de projection et de sélection peuvent évidemment être utilisées dans la même requête SQL.

- Afficher le numéro et le nom des étudiants nés en 1980

SELECT Numetu, Nometu
FROM ETUDIANT
WHERE Dtnaiss>='01-01-1980' AND Dtnaiss<='12-31-1980';

Conversion des données et traitement des dates

Une date particulière doit être exprimé sous la forme Américaine : mm-jj-aaaa. On peut la considérer soit :

- Comme une chaîne de caractères. Par exemple '06-25-1998' ( le 25 juin 1998). On ne peut pas dans ce cas faire de calcul mais on peut faire des comparaisons.
- Comme une date. Il faut alors utiliser la fonction de conversion de données "CAST" et l'on peut alors faire des calculs.

Syntaxe de la fonction de transtypage CAST :

CAST(<col> AS <Datatype>)
   <col> : Nom de colonne ou valeur.

   <Datatype> : {Integer | Decimal | Char | Date | ...}

La notation :

'06-25-1998'-Dtnaiss n'est pas autorisée, il faut donc utiliser
CAST('06-25-1998' AS Date)-Dtnaiss

La fonction CURRENT_DATE permet de récupérer la date système.

Q03 : Nom des étudiants de sexe féminin nés après 1980

Sommaire SQL

Clause ORDER BY

Il est possible, grace à la clause ORDER BY, d'ordonner les résultats d'une requête en fonction de la valeur de certains attributs (colonnes).

- Afficher la liste des enseignants par grade et par ordre alphabétique décroissant des noms.

SELECT Grade, Nomens
FROM ENSEIGNANT
ORDER BY Grade, Nomens DESC;

La requête précédente, qui utilise les noms des colonnes, est équivalente à la requête suivante qui utilise les numéros des colonnes qui servent à ordonner les résultats.

SELECT Grade, Nomens
FROM ENSEIGNANT
ORDER BY 1, 2 DESC;

Tester les exemples

 

©Marc Grange, Février 2001 | Dernière mise à jour : 10 Avril 2006