CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  开发

请教一个关于IN的sql语句

楼主lzzguolx()2004-08-02 16:45:42 在 Oracle / 开发 提问

一个sql语句中in的条件有2000多个  
  比如select   *   from   table   where   item_id   in(value1,value2,value3...valueN)  
  这时会报一个sql错误:ora-0175,列表中表达式不能大于2000;  
  请问怎样才能突破这种限制,请指教 问题点数:30、回复次数:5Top

1 楼bzszp(SongZip)回复于 2004-08-02 16:52:28 得分 0

为什么不吧这些数据放在一个表里面呢?Top

2 楼dinya2003(OK)回复于 2004-08-02 17:33:33 得分 0

改变用另一种方式来实现.   比如建表.或增加标识字段等.Top

3 楼baojianjun(包子)回复于 2004-08-03 10:19:15 得分 30

包你的VALUE值都導入一張臨時表(TABLE_TEMP)中(使用SQLLRD就可以)  
   
  select   *   from   table   where   item_id   in   (SELECT   ITEM_ID   FROM   TABLE_TEMP)  
   
  Top

4 楼zyljrubyzq(zyljruby)回复于 2004-08-03 11:18:56 得分 0

嘻嘻用视图    
  select   *   from   table   where   id   in(select   id   form   视图)Top

5 楼sunnyrain(旭雨)回复于 2004-08-03 11:31:22 得分 0

select   *   from   table   where   item_id    
  in(  
  seletc   value1     aa   from   dual   union   all  
  seletc   value2   from   dual   union   all  
  ...  
  seletc   valuen   from   dual    
  )Top

相关问题

  • 求SQL语句
  • sql语句。
  • sql语句?
  • sql 语句?
  • 求SQL语句
  • ***求SQL语句***
  • sql语句??
  • sql语句
  • sql语句
  • SQL语句

关键词

  • 语句
  • 视图
  • sql
  • seletc
  • valuen
  • dual union
  • 比如
  • table where
  • item
  • temp

得分解答快速导航

  • 帖主:lzzguolx
  • baojianjun

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo