oracle in 中绑定变量
来源:互联网 发布:mate9下载软件应用 编辑:程序博客网 时间:2024/06/05 05:48
在实际使用中,经常会有带in的子查询,如where id in (1,2,3)这样的情况,但是如果很多这样的语句在数据库中出现,将引起数据库的大量硬解析与共享池SQL碎片。所以,在实际应用中,可以采用其他方法,将这些in list给绑定起来。
如果需要绑定in list,首先,需要创建两个类型(type):
针对数据类型的
CREATE OR REPLACE TYPE NUMTABLETYPE as table of number;
针对字符串类型的(每个list的单元大小不要超过1000字节)
create or replace type vartabletype as table of varchar2(1000);
然后创建两个相关的函数
数字列表函数
create or replace function str2numList( p_string in varchar2 )return numTableType
as
begin
end;
字符列表函数
create or replace function str2varList( p_string in varchar2 )return VarTableType
end;
创建之后,我们就可以采用如下的方式来使用in list的绑定了。如可以采用如下的三种方案
SELECT /*+ ordered use_nl(a,u) */id, user_id, BITAND(promoted_type,4) busauth
SELECT
SELECT
Execution Plan
———————————————————-
Statistics
———————————————————-
……
SQL> SELECT
3*
Execution Plan
———————————————————-
Statistics
———————————————————-
- oracle in 中绑定变量
- ORACLE中对in操作使用变量绑定的方法
- In和oracle绑定变量机制
- oracle PL/SQL 中变量绑定用法
- 在java中使用oracle绑定变量
- java中使用oracle的绑定变量
- 在java中使用oracle绑定变量
- 怎么对IN子查询使用绑定变量(oracle)
- Oracle绑定变量带in参数的写法
- oracle中冒号的问题 oracle中变量的绑定
- Oracle 绑定变量
- Oracle 绑定变量
- Oracle中的绑定变量
- Oracle 绑定变量 详解
- oracle绑定变量
- Oracle 绑定变量
- Oracle 绑定变量 示例
- oracle变量绑定
- CKEditor3.6.2和CKFinder2.2.1 for ASP.NET部署设置完美解决方案(3)
- Linux 内存
- CKEditor3.6.2和CKFinder2.2.1 for ASP.NET部署设置完美解决方案(4)
- linux下杀死进程
- Android之Service与IntentService的比较
- oracle in 中绑定变量
- tomcat 7 javax.el.ELException
- linux socket编程 Connection reset by peer 错误
- CKEditor3.6.2和CKFinder2.2.1 for ASP.NET部署设置完美解决方案(5)
- DOTNETc# 委托 delegates
- 交叉编译场景分析(arm-linux)
- 序幕有些长--关于TeX的介绍
- ASP.NET 架设
- Vim 配置文件 _vimrc