大侠留步,请教个问题,数据转化的 已知表中的一个字段(varchar2)的值是 12,23,23,45,现在需要slect * from a where id in(XXXXX--上面的字段),需要怎么做啊 ? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 无须转换,字符型,加引号 '12' slect * from a where id in ('12','23','45') 用instr 查找看是否存在符合id这个字串~ 在补充下、 12 、 34 111、 这是另一个字典表的主键(num型),而且 数据长度不一定,多选框啊。 给个拆分的例子,匹配的sql就不写了。-- 测试数据with tab as(select '12.5,14.0,15.8,18.5,' data from dualunion all select '14.3,15.5,17.5,19.0,' from dual)-- 查询 SQLselect DISTINCT replace( regexp_substr(data||',','.*?'||'[,]',1,level) ,',') datafrom tab connect by level <= (length(DATA) - length(replace(DATA, ',')) ) / length(',') -- 要截取的字符串 域数 ( 即, 以 '*' 分隔出来的字符串数量,有多少个) -- 说明 (字符串长度 - 去除分隔符的长度) / 分隔符长度 = 分隔出的 字符串数量 -- 计算字符串长度时 , 需再补上一个分隔符,因为 1|2 => ( 分隔符数量 + 1 = 分隔域 )order by 1; 如何取得满足检索条件的第一条记录 求求大家,帮帮忙吧,数据库回滚 pl/sql developer中如何导出oracle数据库结构? 一个oracle包,游标问题 (200分求)如何有条件的定时更新数据—在线等,只能发100,解决立马重开贴兑现 oracle语句优化/*+ ALL_ROWS */ 怎么对long型数据做模糊查询? 麻烦各位大哥帮我看看这个问题! 取记录集里的固定条数,该如何写SQL log miner可以分析别的数据库的日志文件吗? 从excel中导入数据问什么总有空格出现? 求救tnsnames.ora的一些问题
-- 测试数据
with tab as(
select '12.5,14.0,15.8,18.5,' data from dual
union all
select '14.3,15.5,17.5,19.0,' from dual
)-- 查询 SQL
select DISTINCT
replace(
regexp_substr(data||',','.*?'||'[,]',1,level)
,',') data
from tab
connect by
level <=
(length(DATA) - length(replace(DATA, ',')) ) / length(',')
-- 要截取的字符串 域数 ( 即, 以 '*' 分隔出来的字符串数量,有多少个)
-- 说明 (字符串长度 - 去除分隔符的长度) / 分隔符长度 = 分隔出的 字符串数量
-- 计算字符串长度时 , 需再补上一个分隔符,因为 1|2 => ( 分隔符数量 + 1 = 分隔域 )
order by 1;