oracledecode函数的用法

oracle decode函数,不管查询的结果是否满足‘PRIMARY’,参数中的select语句还是会执行的,通过查看执行计划就知道

成都创新互联是一家专注于成都做网站、网站设计、外贸营销网站建设与策划设计,南山网站建设哪家好?成都创新互联做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:南山等地区。南山做网站价格咨询:18982081108

set autotrace traceonly

select decode(database_role ,'PRIMARY', 
(select
trunc((size_MB-free_MB)*100/maxsize_MB) "retvalue"
from (
select
tablespace_name,case when sum(decode(autoextensible,'YES',1,0))>0 then 'YES'
else 'NO' end ext,
trunc(sum(bytes)/1024/1024) SIZE_MB,
trunc(sum(case when autoextensible='YES' then maxbytes else bytes
end)/1024/1024) MAXSIZE_MB
from dba_data_files
group by tablespace_name
) t1,
(
select tablespace_name,trunc(sum(bytes)/1024/1024) FREE_MB
from dba_free_space
group by tablespace_name
) t2,
(select tablespace_name
from dba_tablespaces
where contents='PERMANENT') t3
where t1.tablespace_name=t2.tablespace_name and t3.tablespace_name=t1.tablespace_name and t3.tablespace_name='SYSTEM'),0) as retvalue from v$database;

decode函数等价于cash when语句,只不过当条件比较多时,decode函数书写起来比较简洁一点而已

select case 
           when database_role  = 'PRIMARY' then  (select tname from tab where rownum=1)
           else '0' 
       end as retvalue 
from  v$database;

分享题目:oracledecode函数的用法
标题路径:http://hxwzsj.com/article/gipdsd.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 成都网站设计制作公司 网站制作 成都响应式网站建设公司 成都网站建设 四川成都网站设计 手机网站制作 梓潼网站设计 专业网站设计 成都模版网站建设 手机网站建设 成都网站制作 成都网站建设公司 重庆网站制作 上市集团网站建设 温江网站设计 四川成都网站制作 成都网站建设 企业网站建设公司 成都网站建设 app网站建设 企业手机网站建设 高端品牌网站建设