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

oracle将一个结果集作为模糊查询条件改怎么写
select * from t_wry_jbxx jbxx 
where jbxx.wrymc like '%'||(select substr(xzqh,1,2) from t_comn_xzqhdm)||'%' 
如sql表达的意思  但是select substr(xzqh,1,2) from t_comn_xzqhdm 查出来的是一个结果集 
如何修改这个sql语句。。求大神
oracle select

------解决方案--------------------
游标取出每条数据,再拼接做模糊查询
------解决方案--------------------
1.第一种也就是上面说的,先放在游标再逐条like,返回多个结果
2.拼接动态sql语句,将所有like条件穷举出来并用or连接起来,然后统一执行返回一个结果。
数据量不多的话,这些方法也许可行。

引用:
直接这样用肯定不行
存储过程写循环吧
毕竟like只能是一个字符串