要在oracle的存储过程中,实现这样一个功能:从一个表中找,一个字段的值是否有与结定变量值相同。我现在用的是count into。如:select count(1) into a from table1 where table1.id='001'.
功能可以实现,但由于数据量较大,时间比较长。有人说count是全表索引,很费时,但我改成用时标,这样:
cursor Cur_a is select id from table1 t where t.id='001'
flag:=0;
open Cur_a;
fetch Cur_a into Cur_a_V;
if Cur_a%found then
flag:=1;
end if;
close Cur_a;
可测试发现,更费时,可以是每次都要操作游标,高手们有没有好办法,请指教,在线关注,解决就结贴,谢谢!
功能可以实现,但由于数据量较大,时间比较长。有人说count是全表索引,很费时,但我改成用时标,这样:
cursor Cur_a is select id from table1 t where t.id='001'
flag:=0;
open Cur_a;
fetch Cur_a into Cur_a_V;
if Cur_a%found then
flag:=1;
end if;
close Cur_a;
可测试发现,更费时,可以是每次都要操作游标,高手们有没有好办法,请指教,在线关注,解决就结贴,谢谢!
解决方案 »
- ORA--2108: Message -2108 not found; product=RDBMS; facility=ORA
- 如何在存储过程中执行某个带返回值的存储过程
- 请问在oracle9i里,怎样想嵌入表里插入数据和修改嵌入表的数据,谢谢,我摸索了好长时间,不得门道。
- oracle 回退段的讨论
- 卖书: 循序渐进Oracle--数据库管理、优化与备份恢复
- 前触发器的问题
- 福州朋友来看看,帮帮忙
- 再求VB+Oracale客户端免安装的方法!!希望高手求救!!!给200分
- 在约束条件中 Primary Key 和 UNIQUE 都是非空唯一,那有何区别呢?
- rman全备进行dataguard重建备库
- 将同一字段不同值的数量统计在一行中怎么做?
- Oracle与COM口之间的编程
http://community.csdn.net/Expert/TopicView1.asp?id=5021722
试试select count(id) into a from table1 where id='001'.
还不行只能调整share pool等参数.