Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Expressions (Transact-SQL)

Combinaison de symboles et d'opérateurs que le Moteur de base de données SQL Server évalue pour obtenir une seule valeur. Les expressions simples peuvent être une seule constante, variable, colonne ou fonction scalaire. Les opérateurs peuvent être utilisés pour associer plusieurs expressions simples en une expression complexe.

Icône Lien de rubrique Conventions de la syntaxe de Transact-SQL

{ constant | scalar_function | [ table_name. ] column | variable  
    | ( expression ) | ( scalar_subquery ) 
    | { unary_operator } expression 
    | expression { binary_operator } expression  
    | ranking_windowed_function | aggregate_windowed_function
}

Terme

Définition

constant

Symbole représentant une valeur de données spécifique et unique. Pour plus d'informations, consultez Constantes (Transact-SQL).

scalar_function

Unité de syntaxe Transact-SQL qui fournit un service particulier et renvoie une valeur unique. scalar_function peut être une fonction scalaire intégrée (par exemple SUM, GETDATE ou CAST) ou une fonction scalaire définie par l'utilisateur.

[ table_name. ]

Nom ou alias d'une table.

column

Nom d'une colonne. Seul le nom de la colonne est autorisé dans une expression.

variable

Nom d'une variable ou d'un paramètre. Pour plus d'informations, consultez DECLARE @local_variable (Transact-SQL).

( expression )

Toute expression valide définie dans cette rubrique. Les parenthèses regroupent des opérateurs et garantissent que tous les opérateurs de l'expression entre parenthèses sont traités avant que l'expression qui en résulte ne soit combinée avec une autre.

( scalar_subquery )

Sous-requête qui renvoie une valeur. Exemple :

SELECT MAX(UnitPrice)

FROM Products

{ unary_operator }

Opérateur qui n'a qu'un seul opérande :

  • + indique un nombre positif ;

  • - indique un nombre négatif ;

  • ~ indique l'opérateur de complément.

Les opérateurs unaires ne s'appliquent qu'à des expressions qui évaluent un type de données de la catégorie des types de données numériques.

{ binary_operator }

Opérateur qui définit la manière de combiner deux expressions pour parvenir à un résultat unique. binary_operator peut être un opérateur arithmétique, l'opérateur d'affectation (=), un opérateur au niveau du bit, un opérateur de comparaison, un opérateur logique, l'opérateur de concaténation de chaînes (+) ou un opérateur unaire. Pour plus d'informations sur les opérateurs, consultez Opérateurs (Transact-SQL).

ranking_windowed_function

Toute fonction de classement Transact-SQL. Pour plus d'informations, consultez Fonctions de classement (Transact-SQL).

aggregate_windowed_function

Toute fonction d'agrégation Transact-SQL utilisée avec la clause OVER. Pour plus d'informations, consultez Clause OVER (Transact-SQL).

Pour une expression simple composée d'une seule constante ou variable ou d'une seule fonction scalaire ou nom de colonne : les type de données, classement, précision, échelle et valeur de l'expression sont ceux de l'élément référencé.

Lorsque deux expressions sont combinées avec des opérateurs logiques ou de comparaison, il en résulte un type de données booléen ayant l'une des trois valeurs suivantes : TRUE, FALSE ou UNKNOWN. Pour plus d'informations sur les types de données booléennes, consultez Opérateurs de comparaison (Transact-SQL).

Lorsque deux expressions sont combinées avec des opérateurs arithmétiques, de niveau bit ou de chaîne de caractères, l'opérateur détermine le type de donnée du résultat.

Les expressions complexes constituées de nombreux symboles et opérateurs conduisent à un résultat à valeur unique. Le type de données, le classement, la précision et la valeur de l'expression qui en résulte sont déterminés en combinant deux par deux les expressions, et ce jusqu'à l'obtention du résultat final. La séquence selon laquelle les expressions sont combinées est définie par le degré de priorité des opérateurs dans l'expression.

Un opérateur peut combiner deux expressions si elles ont toutes deux un type de données pris en charge par l'opérateur et si au moins l'une des conditions suivantes est vraie :

  • les expressions ont le même type de données ;

  • le type de données ayant le degré de priorité le moins élevé peut être implicitement converti dans le type de données ayant le degré de priorité le plus élevé ;

Si les expressions ne respectent pas ces conditions, les fonctions CAST ou CONVERT peuvent servir à convertir explicitement le type de données ayant le degré de priorité le moins élevé, soit dans le type de données ayant le degré de priorité le plus élevé, soit dans un type de données intermédiaire qui peut être implicitement converti dans le type de données ayant le degré de priorité le plus élevé.

Si aucune conversion implicite ou explicite n'est prise en charge, les deux expressions ne peuvent pas être combinées.

Le classement de toute expression qui s'évalue à une chaîne de caractères est défini d'après les règles de priorité des classements. Pour plus d'informations, consultez Priorité de classement (Transact-SQL).

Dans un langage de programmation tel que C ou Microsoft Visual Basic, une expression s'évalue toujours à un résultat unique. Cette règle varie pour les expressions dans une liste de sélection Transact-SQL : l'expression est évaluée individuellement pour chaque ligne dans le jeu de résultats. Une même expression peut avoir une valeur différente dans chaque ligne du jeu de résultats, mais chaque ligne n'a qu'une seule valeur pour l'expression. Par exemple, dans l'instruction SELECT suivante, ProductID et 1+2 dans la liste de sélection sont tous deux des expressions :

USE AdventureWorks2012;
GO
SELECT ProductID, 1+2
FROM Production.Product;
GO

L'expression 1+2 s'évalue à 3 dans chaque ligne du jeu de résultats. Bien que l'expression ProductID génère une valeur différente dans chaque ligne du jeu de résultats, chaque ligne n'a qu'une seule valeur pour ProductID.

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.

Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2014 Microsoft