У меня есть 2 таблицы, РОДИТЕЛЯ и РЕБЕНКА, где у РЕБЕНКА есть ФК от РОДИТЕЛЯ.
РОДИТЕЛЯ
p_id|name|address
1 |Aaaa|AddressA
2 |Bbbb|AddressB
3 |Cccc|AddressC
РЕБЕНКА
c_id|name|category|p_id
11 |Zzzz|Test1 |1
12 |Yyyy|Test2 |1
13 |Xyxy|Test1 |1
14 |Wwww|Test1 |2
15 |Vvvv|Test1 |2
16 |Uuuu|Test1 |2
17 |Tttt|Test2 |3
18 |Ssss|Test3 |3
19 |Rrrr|Test2 |3
20 |Qqqq|Test2 |3
Я пытаюсь получить PARENT, где все CHILD.category = 'Test1' с этим запросом
select distinct p.* from PARENT p join CHILD c
on p.p_id = c.p_id
where c.category = 'Test1';
Ожидаемый результат, потому что у всех CHILD с p_id 2 есть категория со значением 'Test1':
p_id|name|address
2 |Bbbb|AddressB
Но я получил это, потому что он возвращает PARENT, где РЕБЕНОК имеет категорию =' Test1 ':
p_id|name|address
1 |Aaaa|AddressA
2 |Bbbb|AddressB
Может кто-нибудь помочь указать, где я ошибся?