我正在寻找一种有效的方式来查询具有相同值的项目。如何查询具有相同的一组值的项目
我有一个下表
C_1 C_2
--------
A 1
A 2
-------
B 1
B 2
B 3
-------
C 1
C 2
-------
D 1
D 2
D 3
-------
E 1
E 2
-------
F 0
F 2
我会选择C -1项目有确切同一组C_2元素作为给定项目的名单。
项目A,我将有
C
E
对于B项,我将有
D
怎么能在SQL(Oracle 10g中)来完成?
下面是用于测试目的,创建表语句
create table t (c_1 varchar2(1), c_2 number);
INSERT into t VALUES('A', 1);
INSERT into t VALUES('A', 2);
INSERT into t VALUES('B', 1);
INSERT into t VALUES('B', 2);
INSERT into t VALUES('B', 3);
INSERT into t VALUES('C', 1);
INSERT into t VALUES('C', 2);
INSERT into t VALUES('D', 1);
INSERT into t VALUES('D', 2);
INSERT into t VALUES('D', 3);
INSERT into t VALUES('E', 1);
INSERT into t VALUES('E', 2);
INSERT into t VALUES('F', 0);
INSERT into t VALUES('F', 2);
我不是甲骨文的专家,所以感谢您向我介绍COLLECT和嵌套表格:)我会赞成,但Marcink的答案更通用... – MatBailie 2011-06-15 11:07:48
谢谢,这就是我正在寻找 – schurik 2011-06-15 12:51:12
这是一个非常好的主意。有时候那些关系型扩展确实很整齐。 – 2011-06-17 07:52:16