Maison >base de données >tutoriel mysql >Comment la syntaxe des expressions SQL CASE varie-t-elle selon les moteurs de base de données ?

Comment la syntaxe des expressions SQL CASE varie-t-elle selon les moteurs de base de données ?

DDD
DDDoriginal
2025-01-11 08:55:43993parcourir

How Does SQL CASE Expression Syntax Vary Across Database Engines?

Syntaxe des expressions SQL CASE

La syntaxe complète d'une expression SQL CASE varie en fonction du moteur de base de données utilisé. Voici la syntaxe pour SQL Server :

Syntaxe CASE utilisant l'expression cas :

<code class="language-sql">CASE case-expression
    WHEN when-expression-1 THEN value-1
  [ WHEN when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END</code>

Syntaxe CASE utilisant une expression booléenne :

<code class="language-sql">CASE
    WHEN boolean-when-expression-1 THEN value-1
  [ WHEN boolean-when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END</code>

Voici les termes et concepts utilisés en grammaire :

  • case-expression : Une expression qui produit une valeur.

  • when-expression-x : Une expression à comparer avec case-expression.

  • boolean-when-expression : Une expression qui produit un résultat VRAI/FAUX.

  • value-x: Le résultat d'une instruction CASE si :

    • quand-expression == cas-expression
    • boolean-when-expression == TRUE
  • else-value : Le résultat de l'instruction CASE si aucune condition WHEN correspondante n'est trouvée.

Vous devez faire attention aux points suivants :

  • L'ordre des instructions WHEN est critique car la première condition de correspondance sera utilisée.
  • Si aucune clause ELSE n'est fournie et qu'aucune condition WHEN correspondante n'est remplie, le résultat sera NULL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn