网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.检查Oracle数据库中不合理的sql语.
.Oracel监听器启动后为什么会自动.
.Oracle体系结构简介.
.ORACLE与SQL Server之间的数据迁.
.如何设置Qmail以增加并发发送进程.
.影响Oracle汉字显示的字符集问题.
.Oracle临时表 使用补充.
.oracle 基础入门.
.深入浅出SQL教程之子查询语句.
.细化解析:Oracle数据库后台进程.
.通过分析SQL语句的执行计划优化S.
.Oracle的空间管理.
.不同平台的数据库异步I/O的使用.
.[转]Oracle常用命令.
.Oracle诊断案例2 -SGA与Swap.
.Linux核心数据结构.
.oracle里面如何写case语句.
.虚拟主机(Web/Mail)的设定摘要.
.ORACLE之APACHE虚拟服务器设置.
.Oracle 9i新特性研究五(监视未使.

ORACLE SQL性能优化系列(八)

发表日期:2008-2-9


16.       通过内部函数提高SQL效率.
     SELECT H.EMPNO,E.ENAME,H.HIST_TYPE,T.TYPE_DESC,COUNT(*)      FROM HISTORY_TYPE T,EMP E,EMP_HISTORY H      WHERE H.EMPNO = E.EMPNO AND H.HIST_TYPE = T.HIST_TYPE GROUP BY H.EMPNO,E.ENAME,H.HIST_TYPE,T.TYPE_DESC;
通过调用下面的函数可以提高效率.
FUNCTION LOOKUP_HIST_TYPE(TYP IN NUMBER) RETURN VARCHAR2 AS     TDESC VARCHAR2(30);     CURSOR C1 IS          SELECT TYPE_DESC         FROM HISTORY_TYPE         WHERE HIST_TYPE = TYP; BEGIN     OPEN C1;     FETCH C1 INTO TDESC;     CLOSE C1;     RETURN (NVL(TDESC,’?’)); END; FUNCTION LOOKUP_EMP(EMP IN NUMBER) RETURN VARCHAR2
AS
    ENAME VARCHAR2(30);     CURSOR C1 IS          SELECT ENAME         FROM EMP         WHERE EMPNO=EMP; BEGIN     OPEN C1;     FETCH C1 INTO ENAME;     CLOSE C1;     RETURN (NVL(ENAME,’?’)); END;
SELECT H.EMPNO,LOOKUP_EMP(H.EMPNO),
H.HIST_TYPE,LOOKUP_HIST_TYPE(H.HIST_TYPE),COUNT(*)
FROM EMP_HISTORY H GROUP BY H.EMPNO , H.HIST_TYPE; (译者按: 经常在论坛中看到如 ’能不能用一个SQL写出….’ 的贴子, 殊不知复杂的SQL往往牺牲了执行效率. 能够把握上面的运用函数解决问题的方法在实际工作中是非常有意义的)
上一篇:ORACLE SQL性能优化系列(五) 人气:926
下一篇:ORACLE SQL性能优化系列(七) 人气:745
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐