Question (SELECT)

FondamentalQuestion

La requête de sélection ou question est la base de la recherche de données en SQL.

DéfinitionSélection

La sélection est la composition d'un produit cartésien, d'une restriction et d'une projection (ou encore la composition d'une jointure et d'une projection).

Syntaxe

1
SELECT liste d'attributs projetés
2
FROM liste de relations du produit cartésien
3
WHERE condition de la restriction
  • La partie SELECT indique le sous-ensemble des attributs qui doivent apparaître dans la réponse (c'est le schéma de la relation résultat).

  • La partie FROM décrit les relations qui sont utilisables dans la requête (c'est à dire l'ensemble des attributs que l'on peut utiliser).

  • La partie WHERE exprime les conditions que doivent respecter les attributs d'un tuple pour pouvoir être dans la réponse. Une condition est un prédicat et par conséquent renvoie un booléen. Cette partie est optionnelle.

Exemple

1
SELECT Nom, Prenom
2
FROM Personne
3
WHERE Age>18

Cette requête sélectionne les attributs Nom et Prénom des tuples de la relation Personne, ayant un attribut Age supérieur à 18.

SyntaxeNotation préfixée

Afin de décrire un attribut d'une relation en particulier (dans le cas d'une requête portant sur plusieurs relations notamment), on utilise la notation relation.attribut.

Exemple

1
SELECT Personne.Nom, Personne.Prenom, Vol.Depart
2
FROM Personne, Vol
3
WHERE Personne.Vol=Vol.Numero

SyntaxeSELECT *

Pour projeter l'ensemble des attributs d'une relation, on peut utiliser le caractère * à la place de la liste des attributs à projeter.

Exemple

1
SELECT *
2
FROM Avion

Cette requête sélectionne tous les attributs de la relation Avion.

Notons que dans cet exemple, la relation résultat est exactement la relation Avion