case()的用法

本文深入探讨了SQL中Case语句的两种使用方式:一种基于表达式的判断,另一种基于条件的判断。通过具体实例,详细解释了如何利用Case语句进行数据转换和聚合运算,以实现更灵活的数据展示和分析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总结下我最近写SQL语句时碰到的的case语句

1.case语句通常被称为流行控制语句

1).对expression进行判断,expression等于value1,则返回resultvalue1,如果都不返回when条件,则返回defaultvalue
case expression

      when value1 then resultvalue1
      when value2 then resultvalue2
      when value3 then resultvalue3
      else   defaultvalue

  end

例如  case saletype when '1' then '零售单' when '-1' then '退货单' end
这样在做报表的时候不是显示'1'和'-1',显示的是文字'零售单'和'退货单'

 

2).condition1,condition2,condition3为条件表达式。case函数对各个表达式从前向后进行测试。如果条件1为真的时候就返回条件1对应的值resultvalue1,否则如果condition2为真的时候就返回resultvalue2........以此类推 如果都不符合条件就返回默认值defaultvalue
case 

when condition1 then resultvalue1

when condition2 then resultvalue2

when condition3 then resultvalue3

else   defaultvalue

end

例如  sum(case when sizeorder=1 then qty end)
      case when avg>100 then '优秀' else '良好' end

 

转载于:https://www.cnblogs.com/lita07/p/10958839.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值