继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

mysql仿oracle的decode效果查询

慕UI0519722
关注TA
已关注
手记 296
粉丝 85
获赞 267

以下代码在MYSQL中测试通过,MSSQL应该能跑通,未测试。

复制代码 代码如下:
#创建表如下
create temporary table tmp (a int, b int ,c int);
insert into tmp VALUES (1,10,1),(10,10,2),(10,100,2);
#mysql执行
select sum(case when c = '1' then A else B end) from tmp
#oracle执行
select sum(decode(c,'1',a,b)) from tmp
#普通联合查询
select sum(d) from
(
select a as d from tmp where c=1
union
select b as d from tmp where c=2
)


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP