Мне нужен запрос, который вернет всех женщин в группе.
Пример таблицы данных (Oracle 11g):
with t as (
select 'K' as GROUP_NAME, 1 as ELEMENT_ID from dual
union
select 'K' as GROUP_NAME, 2 as ELEMENT_ID from dual
union
select 'K' as GROUP_NAME, 3 as ELEMENT_ID from dual
union
select 'L' as GROUP_NAME, 1 as ELEMENT_ID from dual
union
select 'L' as GROUP_NAME, 2 as ELEMENT_ID from dual
union
select 'L' as GROUP_NAME, 3 as ELEMENT_ID from dual
union
select 'P' as GROUP_NAME, 1 as ELEMENT_ID from dual
union
select 'P' as GROUP_NAME, 2 as ELEMENT_ID from dual
union
select 'P' as GROUP_NAME, 3 as ELEMENT_ID from dual
)
select * from t
K 1
K 2
K 3
L 1
L 2
L 3
P 1
P 2
P 3
Мне нужно создать дерево со всеми комбинациями безповторяя их в группах (группа K, L, P)
Дерево не должно содержать группу деревьев, т.е. не должно быть дерева с такой ветвью: K1-> L1-> K2
K1
+-- L1
+-- P1
+-- P2
+-- P3
+-- L2
+-- P1
+-- P2
+-- P3
+-- L3
+-- P1
+-- P2
+-- P3
K2
+-- L1
+-- P1
+-- P2
+-- P3
+-- L2
+-- P1
+-- P2
+-- P3
+-- L3
+-- P1
+-- P2
+-- P3
K3
+-- L1
+-- P1
+-- P2
+-- P3
+-- L2
+-- P1
+-- P2
+-- P3
+-- L3
+-- P1
+-- P2
+-- P3
L1
+-- K1
+-- P1
+-- P2
+-- P3
+-- K2
....