1.是同CASE语句指定显示的文本
SELECT [id]
,[terminal],
[备注]= CASE
WHEN [previous_deposit]<8073 THEN '余额不足'
WHEN [previous_deposit]>23482 THEN '余额太多'
ELSE '--'
END
FROM [kaifashujuku].[dbo].[t_provisional_sale]
2.使用CASE语句更新语句
UPDATE [cs].[dbo].[login_user]
SET [txtquanxian] =
CASE WHEN [txtquanxian]>2 THEN '20'
WHEN [txtquanxian]<1 THEN '10'
end
select * from [login_user]
3.通过CASE生成静态交叉表
GO
if exists(select * from INFORMATION_SCHEMA.TABLES where table_name='tb_cs_1')
drop table tb_cs_1
GO
create table tb_cs_1
(
学生姓名 varchar(29),
学生学科 varchar(20),
成绩 float
)
GO//这里加入GO就可以一次性插入多条语句
insert into tb_cs_1 values('张红','语文','80')
insert into tb_cs_1 values('张红','数学','90')
insert into tb_cs_1 values('张红','外语','85')
insert into tb_cs_1 values('李燕','语文','80')
insert into tb_cs_1 values('李燕','数学','85')
insert into tb_cs_1 values('李燕','外语','92')
insert into tb_cs_1 values('范二','语文','81')
insert into tb_cs_1 values('范二','数学','83')
insert into tb_cs_1 values('范二','外语','87')
GO
select 学生姓名,//这里成绩不用单引号
sum(case 学生学科 when '语文'then 成绩 end)as 语文,
sum(case 学生学科 when '数学'then 成绩 end)as 数学,
sum(case 学生学科 when '外语'then 成绩 end)as 外语
from tb_cs_1 group by 学生姓名