Pour retrouver les données d'une table la commande
SQL
SELECT est utilisée. La commande est divisée
en liste de sélection (la partie qui liste les colonnes sera retournée),
liste de table (la partie qui liste les tables depuis lesquelles les données
seront retrouvées), et une qualification optionnelle (la partie qui
spécifie les restrictions). Par exemple, pour retrouver toutes les lignes
de la table weather, tapez :
(où
* affiche
"toutes les colonnes")
et l'affichage devrait être :
city | temp_lo | temp_hi | prcp | date
---------------+---------+---------+------+------------
San Francisco | 46 | 50 | 0.25 | 1994-11-27
San Francisco | 43 | 57 | 0 | 1994-11-29
Hayward | 37 | 54 | | 1994-11-29
(3 rows) |
Vous pouvez spécifier des exepressions arbitraires dans la liste cible.
par exemple, vous pouvez faire :
SELECT city, (temp_hi+temp_lo)/2 AS temp_avg, date FROM weather; |
ça devrait deonner :
city | temp_avg | date
---------------+----------+------------
San Francisco | 48 | 1994-11-27
San Francisco | 50 | 1994-11-29
Hayward | 45 | 1994-11-29
(3 rows) |
Noter comment la clause
AS est utilisée pour renommer
la colonne affichée (c'est optionnel).
Les opérateurs booléens arbitraires (AND,
OR, et NOT) sont admis dans la
qualification d'une requête. Par exemple, la suivante retrouve les jours
de pluie de San Francisco :
SELECT * FROM weather
WHERE city = 'San Francisco'
AND prcp > 0.0; |
Result:
city | temp_lo | temp_hi | prcp | date
---------------+---------+---------+------+------------
San Francisco | 46 | 50 | 0.25 | 1994-11-27
(1 row) |
Enfin, vous pouvez faire une requête pour que les résultats renvoyés
soient triés selon un certain ordre ou que les lignes dupliquées soient
supprimées. (Ne confondez pas,
DISTINCT et ORDER BY peuvent
être utilisés séparément.
SELECT DISTINCT city
FROM weather
ORDER BY city; |
city
---------------
Hayward
San Francisco
(2 rows) |