解决方案 »
- update select的select有不存在的字段也能成功
- oracle数据库备份方案有哪些?
- oracle多字段检索问题
- 有兴趣研究linux+java的欢迎加入19363387群
- 请教:数据转移PROCEDURE报错
- 快速创建表,并且保持某些表字段值???
- ★请问oracle里边这种判断型的select语句怎么写??
- oracle9i不想安装客户端需要打包哪些文件呀?
- 求解决方案 转化数据库
- sql plus连接不上呀,提示 oracle not available
- 在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 ........