Oracle 中sql的使用《二》

oracle中使用sql语句进行遇到以下问题:

二、很多时候需要为查询结果加上单引号隔开,并用逗号隔开;方便以这个查询结果为条件过滤另外的信息。

select * from gzyt.jbpm4_id_membership hip inner join gzyt.jbpm4_id_group op on op.dbid_ = hip.group_
inner join gzyt.jbpm4_id_user er on er.dbid_ = hip.user_
where op.id_ in (select id_ from gzyt.jbpm4_id_group where name_ = 'XXX');

当我们需要拿到详细的op.id_时,我们就不能直接这样写,相反我们应该按照下面的方式将id_全部找出来进行过滤

select * from gzyt.jbpm4_id_membership hip inner join gzyt.jbpm4_id_group op on op.dbid_ = hip.group_
inner join gzyt.jbpm4_id_user er on er.dbid_ = hip.user_
where op.id_ in ('ecxg34343','35ewsdfsdgd','...');

这样我们就需要写一个查询将id查询来,并加上引号和用逗号隔开,

select id_ from gzyt.jbpm4_id_group where name_ = 'XXX'

这条查询显然不能为查询结果加上引号并用逗号隔开

那么问题来了

select ''''||id_||''''||',' from gzyt.jbpm4_id_group where name_ = 'XXX'

问题就解决了,但是最后一行中多了一个逗号  我们只要简单的把她删除就可以了












你可能感兴趣的:(oracle,sql,2015-03-30)