另类case when

来源:互联网 发布:绝对领域 知乎 编辑:程序博客网 时间:2024/04/24 12:09

case when 常用的就是根据一个字段的值来判断该字段作为什么值输出;第二种用根据一个变量选择输出哪一列,示例如下:

比如一台服务器电脑,没日没夜的工作,白天、晚上根据气温cpu的占有率不同,然后外界传参数,白天输出白天的cpu值,晚上输出晚上的cpu值。

create table tableCpu (id int primary key, name varchar(10),cpuday varchar(10),cpunight varchar(10))
insert into tableCpu values(1,'机器a','50%','45%')
insert into tableCpu values(2,'机器b','51%','46%')
insert into tableCpu values(3,'机器a','52%','44%')

当传参是day时,输出cpuday,当传参是night时,输出cpunight,如下:

declare @day  varchar(10)
set @day='day'
select a.id,a.name,case when 'day'=@day then cpuday else cpunight end as eff  from tableCpu a




0 0
原创粉丝点击