Вы можете сделать два объединения и найти свои конкретные записи.Этот пример показывает, что родитель 1 вернется с обоими кидо, но не с родителем 2, у которого есть только Майк.
DECLARE @parent TABLE (ID INT)
DECLARE @child TABLE (ID INT, parentID INT, name VARCHAR(100))
INSERT INTO @parent
VALUES
(1),
(2),
(3),
(4),
(5),
(6)
INSERT INTO @child (ID, parentID, name)
VALUES
(1, 1, 'Mike'),
(2, 1, 'John'),
(3, 2, 'Mike'),
(4, 2, 'Bill'),
(5, 3, 'Dave'),
(6, 4, 'Sam')
SELECT p.*
FROM @parent p
INNER JOIN @child c1
ON c1.parentID = p.id
AND c1.name = 'Mike'
INNER JOIN @child c2
ON c2.parentID = p.ID
AND c2.name = 'John'