
SQL Case Expression Syntax?SQL Case表达式的完整和正确语法是什么? 完整的语法取决于您使用的数据库引擎: 对于SQL Server:
或:
表达式等:
链接:CASE(Transact-SQL) 还要注意,WHEN语句的顺序很重要。您可以轻松编写多个重叠的WHEN子句,并使用第一个匹配的子句。 注意:如果未指定ELSE子句,并且找不到匹配的WHEN条件,则CASE表达式的值为NULL。 考虑到您标记了多个产品,我想说的是完全正确的语法是在ISO / ANSI SQL-92标准中找到的语法:
语法规则
这是PostgreSQL文档中的
或
很显然,当您仅根据一个可能值列表检查一个字段时,第二种形式就更清洁。第一种形式允许更复杂的表达式。 Sybase具有与SQL Server相同的大小写语法: 描述 支持条件SQL表达式;可以在可以使用值表达式的任何地方使用。 句法
大小写和值语法
参量 案件 开始大小写表达式。 什么时候 在搜索条件或要比较的表达式之前。 搜索条件 用于设置所选结果的条件。案例表达式的搜索条件类似于where子句中的搜索条件。 《 Transact-SQL用户指南》中详细介绍了搜索条件。 然后 在指定case的结果值的表达式之前。 表达 是列名,常量,函数,子查询,或由算术或按位运算符连接的列名,常量和函数的任意组合。有关表达式的更多信息,请参见中的"表达式"。 例
我在Oracle页面上挖掘了相同的内容,看起来这是相同的语法,只是描述略有不同。 链接:Oracle / PLSQL:案例声明 11g文档中的Oracle语法:
simple_case_expression
searched_case_expression
else_clause
在这里您可以找到有关SQL中MySQL案例语句的完整指南。
SQL SERVER中的case语句语法:
我们也可以像下面这样使用:
|