SQL Cas, la Syntaxe de l'Expression?
Quel est le complète et de la syntaxe correcte pour le SQL Cas de l'expression?
case expression
est le bon terme, car ils retournent une valeur scalaire (également. dans SQL unstatement
est terminée par le "terminator", qui est le point-virgule).
Vous devez vous connecter pour publier un commentaire.
La complète la syntaxe dépend du moteur de base de données vous travaillez:
Pour SQL Server:
ou:
expressions, etc:
Lien: CAS (Transact-SQL)
Également noter que la commande de la LORS de déclarations est important. Vous pouvez facilement écrire plusieurs clauses when qui se chevauchent, et le premier correspondant est utilisé.
Note: Si pas de clause ELSE est spécifié, et aucune correspondance, LORSQUE la condition est trouvée, la valeur de l'expression case sera NULL.
En considérant que vous avez marqués de plusieurs produits, je dirais que le plein syntaxe correcte serait que l'on trouve dans la norme ISO/ANSI standard SQL-92:
Règles De Syntaxe
Voici les
CAS
exemples d'énoncés à partir de PostgreSQL docs (Postgres suit la norme SQL ici):ou
Évidemment la deuxième forme est plus propre quand vous êtes juste vérifier un champ par rapport à une liste de valeurs possibles. La première forme permet des expressions plus complexes.
Sybase a la même cas de la syntaxe que SQL Server:
Description
Prend en charge conditionnelle des expressions SQL; peut être utilisé partout où une expression de valeur peut être utilisé.
Syntaxe
Cas et les valeurs de la syntaxe
Paramètres
cas
commence le cas de l'expression.
lorsque
précède la condition de recherche ou de l'expression à comparer.
search_condition
est utilisé pour définir les conditions pour les résultats qui sont sélectionnés. Les conditions de recherche des cas les expressions sont semblables aux conditions de recherche dans une clause where. Les conditions de recherche sont détaillées dans les instructions Transact-SQL-Guide de l'Utilisateur.
puis
précède l'expression qui indique une valeur de résultat de l'affaire.
expression
est un nom de colonne, une constante, une fonction, une sous-requête, ou toute combinaison de noms de colonnes, de constantes et de fonctions reliées par calcul ou d'opérateurs au niveau du bit. Pour plus d'informations sur les expressions, voir la section “Expressions” dans.
Exemple
J'ai creusé l'Oracle de la page pour les mêmes et on dirait que c'est la même syntaxe, vient d'être décrit de manière légèrement différente.
Lien: Oracle/PLSQL: le Cas de la Déclaration
Oracle la syntaxe à partir de la Documentation 11g:
simple_case_expression
searched_case_expression
else_clause
Cas syntaxe de l'instruction dans SQL SERVER:
Et nous pouvons l'utiliser comme ci-dessous: