Section courante

A propos

Section administrative du site

SELECT

Sélectionne
SQL Server Microsoft SQL Server

Syntaxe

SELECT statement ::=
[ WITH { [ XMLNAMESPACES ,] [ common_table_expression [,...n] ] } ]
query_expression
[ ORDER BY { order_by_expression | column_position [ ASC | DESC ] }
[ ,...n ] ]
[ FOR Clause]
[ OPTION ( query_hint [ ,...n ] ) ]
query_expression ::=
{ query_specification | ( query_expression ) }
[ { UNION [ ALL ] | EXCEPT | INTERSECT }
query_specification | ( query_expression ) [...n ] ]
query_specification ::=
SELECT [ ALL | DISTINCT ]
[TOP ( expression ) [PERCENT] [ WITH TIES ] ]
select_list
[ INTO new_table ]
[ FROM { table_source } [ ,...n ] ]
[ WHERE search_condition ]
[ GROUP BY ]
[ HAVING search_condition ]

Paramètres

Nom Description
* Ce paramètre permet d'indiquer que toutes les colonnes de toutes les tables et vues de la clause FROM doivent être renvoyées. Les colonnes sont renvoyées par table ou vue, comme spécifié dans la clause FROM, et dans l'ordre dans lequel elles existent dans la table ou la vue.
expression Ce paramètre permet d'indiquer une constante, une fonction, toute combinaison de noms de colonnes, de constantes et de fonctions connectées par un ou plusieurs opérateurs, ou une sous-requête.
new_table Ce paramètre permet d'indiquer le nom d'une nouvelle table à créer, en fonction des colonnes de la liste de sélection et des lignes choisies dans la source de données.
order_by_expression Ce paramètre permet d'indiquer une colonne ou une expression sur laquelle trier l'ensemble de résultats de requête. Une colonne de tri peut être spécifiée sous la forme d'un nom ou d'un alias de colonne, ou d'un entier non négatif représentant la position de la colonne dans la liste de sélection.
search_condition Ce paramètre permet d'indiquer un ou plusieurs prédicats à rencontrer pour les groupes et/ou les agrégats.
select_list Ce paramètre permet d'indiquer les colonnes à sélectionner pour l'ensemble de résultats. La liste de sélection est une série d'expressions séparées par des virgules. Le nombre maximal d'expressions pouvant être spécifiées dans la liste de sélection est de 4096.
table_source Ce paramètre permet d'indiquer le nom d'une table ou d'une vue.
ALL Ce paramètre permet d'indiquer que des lignes en double peuvent apparaître dans l'ensemble de résultats. ALL est la valeur par défaut.
ASC Ce paramètre permet d'indiquer que les valeurs de la colonne spécifiée doivent être triées par ordre croissant. ASC trie de la valeur la plus faible à la valeur la plus élevée. ASC est l'ordre de tri par défaut. Les valeurs nulles sont traitées comme les valeurs les plus basses possibles.
DESC Ce paramètre permet d'indiquer que les valeurs de la colonne spécifiée doivent être triées par ordre décroissant. DESC trie de la valeur la plus élevée à la valeur la plus faible.
DISTINCT Ce paramètre permet d'indiquer que seules des lignes uniques peuvent apparaître dans l'ensemble de résultats. Les valeurs nulles sont considérées comme égales aux fins du mot clef DISTINCT.
TOP (expression ) [ PERCENT ] [ WITH TIES ] Ce paramètre permet d'indiquer que seul un premier ensemble spécifié ou un pourcentage de lignes sera renvoyé à partir de l'ensemble de résultats de requête. expression peut être un nombre ou un pourcentage des lignes. Pour une compatibilité descendante, l'utilisation de l'expression TOP sans parenthèses dans les instructions SELECT est prise en charge, mais n'est pas recommandé.

Description

Cette instruction permet de sortie une liste de données à partir d'une ou plusieurs tables ou vues.

Exemples

L'exemple suivant permet de demander le nom de la base de données courante :

  1. select DB_NAME()
  2. GO

on obtiendra le résultat semblable suivant :

master

L'exemple suivant permet d'afficher la liste des nom de base de données disponible sur le serveur SQL Server :

  1. SELECT name FROM sys.databases
  2. GO

on obtiendra le résultat semblable suivant :

name
master
tempdb
model
msdb

On peu avoir plus de détail qu'avec le SELECT en utilisant la STORED-PROCEDURE du nom de Sp_databases de la façon suivante :

  1. Sp_databases
  2. Go

on obtiendra le résultat semblable suivant :

DATABASE_NAME DATABASE_SIZE REMARKS
master 6784 NULL
tempdb 3328 NULL
model 33344 NULL
msdb 2560 NULL

L'exemple suivant permet de détecter les informations de classement, y compris si la machine est sensible à la casse ou non :

  1. SELECT SERVERPROPERTY('COLLATION')
  2. GO

on obtiendra le résultat semblable suivant :

French_CI_AS

L'exemple suivant permet de demander le nom de l'édition de SQL Server actuellement utilisé :

  1. SELECT SERVERPROPERTY('EDITION')
  2. GO

on obtiendra le résultat semblable suivant :

Express Edition with Advanced Services (64-bit)

L'exemple suivant permet détection si une sécurité d'authentification est utilisé :

  1. SELECT SERVERPROPERTY('IsIntegratedSecurityOnly')
  2. GO

on obtiendra le résultat semblable suivant :

0

Voici un exemple montrant une utilisation de la valeur absolue avec des parenthèses :

  1. SELECT ABS(9 * - 7) AS Expr1

on obtiendra le résultat suivant :

Expr1
63


Dernière mise à jour : Samedi, le 4 novembre 2017