Le processus et la commande de récupération des données sont appelés une
requête. En SQL, la commande SELECT est utilisée pour spécifier des requêtes. La
syntaxe générale de la commande SELECT
est
[WITHwith_requêtes
] SELECTliste_select
FROMexpression_table
[specification_tri
]
Les sections suivantes décrivent le détail de la liste de sélection,
l'expression des tables et la spécification du tri. Les requêtes
WITH
sont traitées en dernier, car il s'agit d'une
fonctionnalité avancée.
Un type de requête simple est de la forme :
SELECT * FROM table1;
En supposant qu'il existe une table appelée table1
, cette
commande récupérera toutes les lignes et toutes les colonnes, définies par
l'utilisateur, de
table1
. La méthode de récupération dépend de l'application
cliente. Par exemple, le programme psql affichera
une table, façon art ASCII, alors que les bibliothèques du client offriront
des fonctions d'extraction de valeurs individuelles à partir du résultat de
la requête. *
comme liste de sélection signifie que toutes
les colonnes de l'expression de table seront récupérées. Une liste de sélection
peut aussi être un sous-ensemble des colonnes disponibles ou effectuer
un calcul en utilisant les colonnes. Par exemple, si table1
dispose des colonnes nommées a
, b
et c
(et
peut-être d'autres), vous pouvez lancer la requête suivante :
SELECT a, b + c FROM table1;
(en supposant que b
et c
soient de type numérique).
Voir la Section 7.3 pour plus de détails.
FROM table1
est un type très simple d'expression de
tables : il lit une seule table. En général, les expressions de tables
sont des constructions complexes de tables de base, de jointures et de
sous-requêtes. Mais vous pouvez aussi entièrement omettre l'expression de table
et utiliser la commande SELECT
comme une calculatrice :
SELECT 3 * 4;
Ceci est plus utile si les expressions de la liste de sélection renvoient des résultats variants. Par exemple, vous pouvez appeler une fonction de cette façon :
SELECT random();