Come posso fare l'intersezione tra i risultati di queste 2 query?

codice:
      $sql_1=@mysql_query($query_keywords);
      $sql_2=@mysql_query($query_autori);
In entrambi questi array vengono estratti gli ID, io volevo ottenere un array con solo gli ID in comune...

Pensavo che trasformando i risultati in array, in questo modo
codice:
$ricerca_sql_1=mysql_fetch_array($sql_1);
poi sarei riuscita nel mio intento, ma no!

Ho già cercato di fare un'unica query ma si tratta di query complesse e non sono riuscita

Se può servire le query sono così(alcuni dei valori nella query sono delle variabili)

prima query
codice:
SELECT `Fonti`.`ID`, `Fonti`.`Titolo`, `Fonti`.`formato`, `Fonti`.`Anno`, GROUP_CONCAT( `Parole_chiave`.`keyword` ORDER BY `Parole_chiave`.`keyword` ASC SEPARATOR ', ')

FROM `Fonti`

INNER JOIN `Assegnazione_parole_chiave` ON `Fonti`.`ID` = `Assegnazione_parole_chiave`.`fonteid`
INNER JOIN `Parole_chiave` ON `Parole_chiave`.`ID` = `Assegnazione_parole_chiave`.`keywordid`
INNER JOIN `Autori` ON (`Autori`.`ID` = `Fonti`.`autore_2id` OR `Autori`.`ID` = `Fonti`.`autore_1id`)

WHERE ( 1 
        AND (`Fonti`.`Titolo` LIKE '%CRISM%')
        AND (`Fonti`.`Anno` < 2010) 
        AND (`Fonti`.`Anno` > 2000)
        AND (`Autori`.`ID` IN (75, 1))
       )
GROUP BY `Fonti`.`ID`
seconda query
codice:
SELECT `Fonti`.`ID`, `Fonti`.`Titolo`, `Fonti`.`formato`, `Fonti`.`Anno`, GROUP_CONCAT( `Autori`.`Nome_Autore` ORDER BY `Fonti`.`autore_1id` SEPARATOR ', ')

FROM `Fonti`

INNER JOIN `Autori` ON (`Autori`.`ID` = `Fonti`.`autore_2id` OR `Autori`.`ID` = `Fonti`.`autore_1id`)
INNER JOIN `Assegnazione_parole_chiave` ON `Fonti`.`ID` = `Assegnazione_parole_chiave`.`fonteid`

WHERE ( 1 AND (`Assegnazione_parole_chiave`.`keywordid` IN (75, 123)) )

GROUP BY `Fonti`.`ID`
POTETE AIUTARMI?