ORACLE SQL IN关键字的用法

本文探讨了Oracle数据库中IN子句的参数数量限制,指出在Oracle9i中参数个数不能超过256,在Oracle10g中不能超过1000。并解释了当使用子查询作为IN子句的参数时,并不受此限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

in后括号中的参数个数有限制,Oracle 9i 中个数不能超过256,Oracle 10g个数不能超过1000.

重点:参数个数,不是总长度。

如下SQL子查询返回结果大于1000个,也没关系,因为放在in的括号里面的参数是个子查询相当于一个参数。

eg:

    SELECT SRF.ROLE_ID FROM CL11.SYS_ROLE_DD SRF
  WHERE SRF.ROLE_ID
IN (SELECT SYS_ROLE_DD.ROLE_ID
  FROM CL11.SYS_ROLE_DD ,CL11.SYS_FUNCTION
  where SYS_ROLE_DD .FUNC_ID = SYS_FUNCTION.FUNC_ID)


如果in后面的括号里面放入的是 逗号分隔的大于1000个参数则报错。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值