当前位置: 代码迷 >> Oracle开发 >> 关于in,该怎么解决
  详细解决方案

关于in,该怎么解决

热度:26   发布时间:2016-04-24 07:52:43.0
关于in
select   a,b
from   tbl
where   c   in( '0001,   0002 ')
这样直接运行sql是可以正确检索出数据的

但是如果在package   body里写方法

用参数如x传递 '0001,   0002 '就检索不出来
select   a,b
from   tbl
where   c   in(x)

这是什么原因,和in有什么关系吗?
或者有其他解决办法?

------解决方案--------------------
select a,b from tbl where c in( '0001 ', '0002 ')
不等于
select a,b from tbl where c in( '0001,0002 ')

楼主可以用动态PL/SQL来实现。

------解决方案--------------------
动态语句或者可能用以下方法可以解决,lz不防一试
select a,b
from tbl
where instr(c,x)> 0
------解决方案--------------------
到底是 '0001, 0002 '还是 '0001 ', '0002 '?
------解决方案--------------------
是 '0001 ', '0002 '
------解决方案--------------------
(DECODE(参数1,0,CCC,参数2)
转换有问题...分析一下转换后的类型
  相关解决方案