日期:2014-05-17 浏览次数:20971 次
从表A的ID字段查出如下结果 SELECT A.ID FROM A; ------------------ 123;456;789 现在有表C 需要这样的sql SELECT C.ID,C.NAME ...FROM C WHERE C.ID IN ( SELECT ID FROM A ); 可是 SELECT ID FROM A 根本不是我们 正确 in()需要的 一行n列的格式 怎样将 SELECT ID FROM A 查询出的id搞成 一行n列的格式 。 例如 in ('123','456','789') 我写过一个函数getStr() 函数返回 就是'123','456','789' 这个字符串,但是将函数放入in (getStr()) 这样却查不查结果, 之所以发到oracle开发贴 就是想用oracle 搞,java就不用了,请高手帮忙
SELECT C.ID,C.NAME FROM C WHERE instr( ( SELECT ';'||ID||';' FROM A ),';'|| C.ID||';')>0;