在查询数据库的时候出现一个这样的问题在in条件的后边范围超过1000个的时候就会抱错~
比如说SELECT * FROM TableA
WEHERE 字段a IN('aa','bb',.............,'ccccccc')
也就是IN后边的条件达到了1000个,这个SQL语句就会抱错,请问有什么好办法~~
比如说SELECT * FROM TableA
WEHERE 字段a IN('aa','bb',.............,'ccccccc')
也就是IN后边的条件达到了1000个,这个SQL语句就会抱错,请问有什么好办法~~
解决方案 »
- centos 6.0 安装oracle 执行./runInstaller时出现错误提示
- 怎样在存储过程中让变量以结果集的方式显示出来?
- ORALCE 用IMPDP导入的序列不一致,这是怎么回事?
- 怎么恢复在oracle10g中误删除的数据表?
- linux下oracle导出dmp到windows操作系统并能用文本或excel打开,急呀!!
- 有一张表无故不见,想看看日志是怎么回事,如何看?
- 大家帮助看一下这个表如何设计
- PL/SQL通过哪几个端口连接oracle?
- 求助各位大哥,很急,在线等待...
- Oracle BLOB列检索问题(或:InterMedia配置问题)
- 2表查询求SQL语句
- powerdesiger不能提示模板错误,却在检查模板的时候只显示了警告没有显示错误。
in函数查询速度会很慢
但要求是将数据从另外一个表里拿出来后进行查询,我拿出来后在.net里边是一个DataTable的形式,让我我将它进行了处理,拼成了一个字符串然后直接
放在了in后边
而且也没有办法用连接查询的~~应为两个标在不同的数据库里~~
in 列表过长, 确实是个烦人的问题, 楼主可以把这个列表拆分成几段, 比如:SELECT * FROM TableA
WEHERE 字段a IN('aa','bb',.............,'ccccccc')
or 字段a in ('dddd', 'eeee');