Я использую Oracle 10g Вот мой сценарий:
У меня есть две таблицы
class1(groupName, subgroup)
class2(groupName, subgroup, ind)
Вот мои данные выглядят так:
class1
groupName subgroup
A 1
A 2
B 3
C 4
C 4
C 5
D 6
class2
groupName subgroup IND
A 1 Y
A 1 N
A 2 Y
A 2 N
B 3 Y
C 4 Y
C 4 N
Теперь,Мне нужно получить данные, которые имеют совпадающие groupName и subGroup как в class1, так и в class2 (не обязательно различное совпадение).В дополнение к этому столбец IND должен иметь пару значений 'Y' и 'N' для каждой подгруппы в классе 2. Например, в приведенном выше примере GroupName A квалифицируется, поскольку A существует как в class1, так и в class2 и имеет подгруппу 1 и2 существуют как в class1, так и в class2, а столбец IND в таблице class2 содержит пару «Y» и «N» для каждой подгруппы (т. Е. 1 и 2).
Остальные записи не квалифицированы, потому что: Группа B имеет подгруппу 3, которая существует как в class1, так и в class2, но у нее нет пар «Y» и «N» для подгруппы 3 в class2.Группы C и D не квалифицированы, потому что вся ее подгруппа (4,5) не существует в классе 2.
У меня более 700 000 записей как в таблице class1, так и в class2.Любой человек знает, как эффективно получить эту информацию.