where中的case

1. 在选择列中的实例
select
(case t.ca04_field_id
when '1021' then '1021000'
when '1022' then '1022000'
else '7777'
end) as field

from ta_document15 t

2.在where条件中

由于case when 只能返回值,不能返一个true OR false ,
所以在where条件中,可以采用下边的方法:
where
(case XXX when A then 1
when B then 2
else 0
end)=1


另,case+like的用法:
declare @IsShow Int
select @IsShow=1

如是不同的操作符可用下面的方式
Select *
From SO
Where (SONUM = case @IsShow When 1 Then 'D3990001 ' end ) or (SONUM like case @IsShow When 2 Then 'D3A370261 ' end )

如是相同的操作符可用下面的方式
Select *
From SO
Where SONUM like ( case @IsShow When 1 Then 'D3990001% ' When 2 Then 'D3A370261% ' end )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值