Non e' chiaro come sono strutturate le tabelle in questo db. Dovrebbero essere:

Persone (id_nome, nome, cognome, sesso, anno, città)
Discendenza (id, id_genitore, id_figlio)

--dove persone.id_nome sara' discendenza.id_genitore / id_figlio

codice:
select p.*
from persone p
inner join discendenza d ON p.id_nome = d.id_genitore
group by d.id_genitore, d.id_figlio, p.sesso
having count(p.id_nome) = 2
Tradotto ... selezioni i record di "persone"
dove id_nome corrisponde a id_genitore
raggruppando i record per id_genitore, id_figlio, sesso
ed estraendo solo i record dove la conta dei record id_nome trovati sia = 2

non ho idea se ti funzionera' poiche' tutto dipende da come interpreterai questa cosa e dalla struttura che darai alle tue tabelle. La logica e' quella.