欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

仿 oracle 的decode效果查询_MySQL

程序员文章站 2024-02-05 17:06:52
...
今天遇到群里发的一个问题,觉得有点意思,发上来看一下

仿 oracle 的decode效果查询_MySQL

以下代码在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
)
相关标签: 测试