解决方案 »
- Oracle 建立多个DataBase的性能问题
- 求助ORA-03113: end-of-file on communication channel
- 那位熟悉数据字典,有问题请教
- 请问什么情况下会引起oracle索引失效?大家来讨论
- 怎么查看oracle建立的序列
- 查询相等条件之外的数据?
- 求教一個整數轉換為字符的函數問題(100分,問題解決馬上給)
- 怎么把一个日期型的字段,格式化为yyyy-mm-dd hh:mm?
- oracle里我用system连上去,建的表,用别的账户连上去看不到啊!
- oci读取blob字段的效率问题
- 在eclipse中用JDBC连接oracle数据库总是提示Exception in thread "main" java.lang.ClassNotFoundE
- ORACLE
SELECT A.PAPERID FROM
(SELECT PAPERID FROM TABLE WHERE RESEARCHFIELDID = '9999832') A,
(SELECT PAPERID FROM TABLE WHERE RESEARCHFIELDID = '9999833') B,
WHERE A.PAPERID = B.PAPERID
exists(select 1 from table b where b.PAPERID =a.PAPERID and b.RESEARCHFIELDID= '9999832') and
exists(select 1 from table b where b.PAPERID =a.PAPERID and b.RESEARCHFIELDID= '9999833')
你说的十种是什么情形,如果是列举的只能自己追加判断,但是如果你要想找包含所有RESEARCHFIELDID的还可以想别的办法
SELECT A.PAPERID, COUNT(0) FROM (
SELECT DISTINCT PAPERID, RESEARCHFIELDID FROM TABLE
WHERE RESEARCHFIELDID = '9999832' OR RESEARCHFIELDID = '9999833') A
GROUP BY A.PAPERID
HAVING COUNT(0) > 1
select PAPERID,wm_concat(RESEARCHFIELDID) as ad from TABLE group by PAPERID
) where ad ='9999832,9999833'
包含多少个不同RESEARCHFIELDID 都OK 改一下ad ='9999832,9999833,111,232,341,32131,1231'就可以了,当然这个数据的先后顺序你要自己找一下,wm_concat拼接出来的数据会按照一定顺序排的--或者
where instr(ad,'9999832')>0 and instr(ad,'9999833')>0 ........