日期:2014-05-17  浏览次数:20726 次

求教在一个字符串中查找另一个字符串中子串的集合的高效的方法
各位大师,现在有一张 A 表 ,表中有一个字段 str 里面存储着子字符串的集合,并用;隔开 ,如 A;C;B;D
现在还有一张B表 ,表中有一个字段 str2 里面存储着子字符串的集合,并用 ,隔开 ,如 C,A
现在要求 如果 str2中的 子字符串的集合都能在str中找到,则选出该条记录
即 如果一条记录 的str2 字段是 D,B 的话,str 为 A;C;B;D 则选出该条记录
如果 如果一条记录 的str2 字段是 D,E 的话,str 为 A;C;B;D ,则不选出该条记录
,请问有什么高效的SQL写法 ,谢谢指教!
------解决方案--------------------
SELECT replace('b;db',';','a') FROM dual;
SELECT instr('badb','a') FROM dual;
自己组织吧
------解决方案--------------------
同求,帮顶下
------解决方案--------------------
这个比较应该要借助函数来实现吧,单纯的sql~~~