oracle10g中对varchar2类型的字段怎么做出类似split的功能(急) oracle10g中得到一个varchar2类型字段的值为'a,b,c',怎么得到一个{a,b,c}的集合,a,b,c分别也为varchar2,让我能进行select...form...where ... in ('a','b','c')操作,操作只能在oracle中,','的数量不只2个,是动态的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 好像没有这个功能split功能哦参考:http://hi.baidu.com/wenwenxiaoxing/blog/item/419cd6ca91b01e43f21fe794.html 感觉还是到开发工具中去处理吧,比如.net直接就有split函数 或者用dbms_sql执行动态语句,这样就不需要拆分了 完全没必要....oracle有instr函数...你的in可以改写成instr,比如你要找value字段在不在'a,b,c,d'里,用 instr(value,'a,b,c,d')>0就行了...进一步,如果是'a,ab,abc,abcd'这种串,也就是说串内部的值是有包含关系的,可以用instr( ','||value||',' , ','||a,ab,abc,abcd||',' )>0 少加了对引号instr( ','||value||',' , ','||'a,ab,abc,abcd'||',' )>0 用函数instr()判断它里面是否存在值?如果存在值那么instr(','||'a,b,c'||',',字段)>0 个人感觉sql中只能用 instr来做了,否则的话,你就只有用前台java代码来实现了! oracle 11g怎么卸载? 怎样查询相同时间段内价格最大的记录 如何显示如下数据信息 求Oracle查询条件的中Date型加int型的写法 索引与title='标题'效率那个高 函数如何返回表值? 求助,Oracle报存储过程编译错误 关于odbc 在Oracle SQL *Plus 利用“Create type”创建新的数据类型不执行。 非归档方式数据恢复问题,在线等候 odbc oracle driver for linux 哪有?? oracle存储过程插入数据问题
参考:http://hi.baidu.com/wenwenxiaoxing/blog/item/419cd6ca91b01e43f21fe794.html
完全没必要....oracle有instr函数...你的in可以改写成instr,比如你要找value字段在不在'a,b,c,d'里,用 instr(value,'a,b,c,d')>0就行了...进一步,如果是'a,ab,abc,abcd'这种串,也就是说串内部的值是有包含关系的,
可以用instr( ','||value||',' , ','||a,ab,abc,abcd||',' )>0
instr( ','||value||',' , ','||'a,ab,abc,abcd'||',' )>0
判断它里面是否存在值?如果存在值那么instr(','||'a,b,c'||',',字段)>0
个人感觉sql中只能用 instr来做了,否则的话,你就只有用前台java代码来实现了!