Ho fatto una rapida prova su due tabelle contenenti due campi id e nome.
Con una left join del genere trovi i record della tabella 2 che non hanno corrispondenza nella tabella1.
codice:
SELECT tabella2.nome
FROM tabella2 LEFT JOIN Tabella1 ON tabella2.id=Tabella1.id
WHERE Tabella1.id Is Null;
Per aggiungere tali record alla tabella 1 devi usare il costrutto insert into select
codice:
INSERT INTO tabella1 ( nome )
SELECT tabella2.nome
FROM tabella2 LEFT JOIN Tabella1 ON tabella2.id=Tabella1.id
WHERE Tabella1.id Is Null;
Ovviamente nel tuo caso nella insert into dovrai specificare l'elenco di tutti i tuoi campi tranne l'id e altrettanto farai nella select dove io ho messo solo tabella2.nome.
P.S. Ovviamente ti consiglio di fare le tue prove su una copia delle tabelle.