Case函数
1.Case函数
可以在SQL语句中实现“IF-THEN-ELSE”逻辑计算功能
有两种形式:simple case和searched case
simple case的语法结构:
CASE value
WHEN [compare_value] THEN result
[WHEN [compare_value] THEN result …]
[ELSE result] END
语义:将case后面的值value分别和每个when子句后面的值compare_value进行相等比较,一旦和某个when子句后面的值相等则返回相应的then子句后面的值result。如果和所有when子句后面的值都不相等,则返回else子句后面的值。没有else部分则返回null
value可以是字面量、表达式或者列名
CASE表达式的数据类型取决于跟在then或else后面的表达式的类型。这些类型必须相同(可尝试做隐式类型转换)。否则出错
SELECT CASE 1
WHEN 1 THEN ‘one’
WHEN 2 THEN ‘two’
ELSE ‘more’ END result;
得到1980年后加入俱乐部的球员的号码、性别和名字。性别必须显示为“Female”或者“Male”
SELECT playerno,
CASE sex
WHEN ‘F’ THEN ‘Female’
ELSE ‘Male’ END sex,