永发信息网

如何减少对数据库的访问次数来加快sql执行

答案:2  悬赏:0  手机版
解决时间 2021-04-06 05:43
  • 提问者网友:浮克旳回音
  • 2021-04-05 06:38
如何减少对数据库的访问次数来加快sql执行
最佳答案
  • 五星知识达人网友:duile
  • 2021-04-05 07:09
当执行每条SQL语句时, ORACLE在内部执行了许多工作: 解析SQL语句, 估算索引的利用率, 绑定变量 , 读数据块等等. 由此可见,
减少访问数据库的次数 , 就能实际上减少ORACLE的工作量.

例如,

以下有三种方法可以检索出雇员号等于0342或0291的职员.

方法1 (最低效)

SELECt
EMP_NAME , SALARY , GRADE

FROM EMP

WHERe EMP_NO = 342;

SELECt EMP_NAME , SALARY , GRADE

FROM EMP

WHERe
EMP_NO = 291;

方法2 (次低效)

DECLARE

CURSOR C1 (E_NO
NUMBER) IS

SELECt EMP_NAME,SALARY,GRADE

FROM EMP

WHERe
EMP_NO = E_NO;

BEGIN

OPEN C1(342);

FETCH C1 INTO …,..,..
;

…..

OPEN C1(291);

FETCH C1 INTO …,..,.. ;

CLOSE C1;

END;

方法3 (高效)

SELECt A.EMP_NAME ,
A.SALARY , A.GRADE,

B.EMP_NAME , B.SALARY , B.GRADE

FROM EMP
A,EMP B

WHERe A.EMP_NO = 342

AND B.EMP_NO = 291;
全部回答
  • 1楼网友:摆渡翁
  • 2021-04-05 07:18
你好! 使用存贮过程,将多个SQL放在一起执行。 仅代表个人观点,不喜勿喷,谢谢。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯