今天遇到群里发的一个问题,觉得有点意思,发上来看一下
文章源自很文博客https://www.hinwi.com/很文博客-https://www.hinwi.com/18046.html
以下代码在MYSQL中测试通过,MSSQL应该能跑通,未测试。文章源自很文博客https://www.hinwi.com/很文博客-https://www.hinwi.com/18046.html
- #创建表如下
- 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
- )
我的微信
微信号已复制
扫一扫更精彩
大家的支持是我更新的动力!!!