Le select est la commande de base d'une sélection de données d'une table de la base de données : Code (Text): SELECT [DISTINCT ou ALL] * ou liste de colonnes FROM nom de table ou de la vue [WHERE prédicats] [GROUP BY ordre des groupes] [HAVING condition] [ORDER BY ] liste de colonnes SELECT : Le mot clef DISTINCT qui permet d‘éliminer les doublons dans la réponse. Vous pouvez rajouter autant de colonnes que vous le désirez en utilisant le mot clef AS. SELECT distinct CLI_PRENOM as 'Prénom' FROM T_CLIENT WHERE TIT_CODE = 'M.' WHERE : Le prédicat doit contenir n'importe quelle expression logique renvoyant une valeur vrai. Dans la clause WHERE, vous disposez de différents opérateurs de comparaisons logiques : WHERE valeur1 [NOT et] = ou < ou <= ou > ou >= ou <>valeur2 [OR ou AND ...] SELECT * FROM TJ_CHB_PLN_CLI WHERE CHB_PLN_CLI_OCCUPE = True ORDER BY : Cette clause permet de définir le tri des colonnes de la réponse, soit en précisant le nom littéral de la colonne, soit en précisant son n° d'ordre dans l'énumération qui suit le mot clef SELECT. ASC spécifie l'ordre ascendant et DESC l'ordre descendant du tri. ASC ou DESC peut être omis, dans ce cas c'est l'ordre ascendant qui est utilisé par défaut. SELECT CLI_NOM, CLI_PRENOM FROM T_CLIENT ORDER BY CLI_NOM ASC, CLI_PRENOM HAVING : La plupart du temps, la difficulté réside dans la compréhension de la différence entre le filtre WHERE et le filtre HAVING. Disons plus pragmatiquement que le filtre WHERE permet de filtrer les données des tables tandis que le filtre HAVING permet de filtrer les données du résultat. Par la suite on peut compliquer un peu les choses en utilisant des fonctions diverses : CAST - UPPER - LOWER - TRIM - SUBSTRING - EXTRACT et les fonctions d'aggrégations AVG - MAX - MIN - SUM - COUNT