问题

SQL案例表达式的完整正确语法是什么?

  最佳答案

完整的语法取决于您正在使用的数据库引擎:

对于SQL Server:

 CASE case-expression
    WHEN when-expression-1 THEN value-1
  [ WHEN when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END
 

或:

 CASE
    WHEN boolean-when-expression-1 THEN value-1
  [ WHEN boolean-when-expression-n THEN value-n ... ]
  [ ELSE else-value ]
END
 

表达式等:

 case-expression    - something that produces a value
when-expression-x  - something that is compared against the case-expression
value-1            - the result of the CASE statement if:
                         the when-expression == case-expression
                      OR the boolean-when-expression == TRUE
boolean-when-exp.. - something that produces a TRUE/FALSE answer
 

链接: CASE(Transact-SQL)

另请注意, WHEN 语句的排序很重要,您可以轻松地编写重叠的多个 WHEN 子句,并使用匹配的第一个子句。

注意:如果没有指定 ELSE 子句,而且没有找到匹配的 WHEN-cate,则 CASE 表达式的值为 NULL。

  相同标签的其他问题

sqlsql-serveroraclesyntaxcase