WITH t1 AS ( SELECT 1 seq, '제목' title FROM dual UNION ALL SELECT 2, '제목2' FROM dual UNION ALL SELECT 3, '제목3' FROM dual ) , t2 AS ( SELECT 1 parent_seq, 'A' code FROM dual UNION ALL SELECT 1, 'B' FROM dual UNION ALL SELECT 2, 'A' FROM dual UNION ALL SELECT 2, 'C' FROM dual UNION ALL SELECT 3, 'D' FROM dual ) SELECT * FROM t1 WHERE seq IN (SELECT parent_seq FROM t2 WHERE code IN ('A', 'C') GROUP BY parent_seq HAVING MIN(code) != MAX(code) -- HAVING COUNT(*) = 2 ) ;