有2列, Group_id 和 Memberselect Group_id from tablewhere Member = A 且 Member = B 且 Member = C
总的来说,我希望把 仅存在A、B、C 这3 个元素的 group_id 查找出来。 也就是把22 找出来。具体的sql 该怎么写
总的来说,我希望把 仅存在A、B、C 这3 个元素的 group_id 查找出来。 也就是把22 找出来。具体的sql 该怎么写
解决方案 »
- 如何修改sqlnet.ora文件?我在记事本中修改后保存时提示“拒绝访问”是什么原因?
- Oracle 查询显示“未选定行”
- DataReader 的Getbytes方法异常
- 遭遇ORA-00600错误,求高手相助
- 大家指教一下关于触发器的问题
- 图片(BLOB)和大于4000字节的数据(CLOB)
- 多表连接查询的一个问题
- oracle8i数据库启动错误
- 错误代码:ORA-03113 end-of-file on communication channel
- ★★关于数据库、SID和服务(Srvc)三者之间的关系问题,一个数据库是否可以对应两个SID,是否可以有多个Srvc★★
- SQL请教
- 急,哪为大虾帮帮忙,本人新手,用plsql删除表时没提交,现在左侧栏目里表名还在,但是对表操作时又提示表不存在,请问我该怎么彻底将它删掉
FROM
(
SELECT group_id,MAX(susbstr(sys_connect_by_path(MEMBER,','),2)) join_member
FROM
(
SELECT group_id,MEMBER,
row_number()over(PARTITION BY group_id
ORDER BY group_id) rn
FROM tab
)
START WITH rn=1
CONNECT BY rn-1 = PRIOR rn AND group_id=PRIOR group_id
)
WHERE join_member='A,B,C'
SELECT group_id
FROM
(
SELECT group_id,MAX(substr(sys_connect_by_path(MEMBER,','),2)) join_member
FROM
(
SELECT group_id,MEMBER,row_number()over(PARTITION BY group_id ORDER BY group_id) rn
FROM test
) GROUP BY group_id
START WITH rn=1
CONNECT BY rn-1 = PRIOR rn AND group_id=PRIOR group_id
)
WHERE join_member='B,C,A' --顺序调过来就没结果了
--join_member='A,B,C' 有结果且正确