时间:2021-05-24
以下代码在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
)
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在Oracle查询中,如果在没有排序,但又想让某列中特定值的信息排到前面的时候,使用oracle的decode(字段,'字段值',数字)如selectnamef
最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习.....(一)、mysql的分页查询
Oracle查询结果集,随机排序复制代码代码如下:select*fromtable1orderbydbms_random.value();MySQL随机查询出一
Oracle查询结果集,随机排序复制代码代码如下:select*fromtable1orderbydbms_random.value();MySQL随机查询出一
简介:mysql5.0.94版本,该版本以及较高级的版本(5.5、6等等)尚未支持循环递归查询,和sqlserver、oracle相比,mysql难于在树状表中