Ti suggerisco di avere una tabella prodotti "principale", che elenca tutti i prodotti, indipendentemente dal fatto che siano venduti su tutti siti, o solo uno. Quindi unisciti a ciascuna delle tabelle dei prezzi del sito Web. Prova ad abbinare il nome del prodotto. Nella sua forma più semplice, la query sarebbe simile a:
select
p.*,
t1.price as site1_price,
t2.price as site2_price,
t3.price as site3_price
from product p
left join website1 t1 on t1.name = p.name
left join website2 t2 on t2.name = p.name
left join website2 t3 on t3.name = p.name;
Potrebbe essere necessario provare a unirti su marca e modello, ad esempio on t1.brand = p.brand and t1.model = p.model
o altri criteri se il nome non è univoco.
i prezzi del sito saranno nulli se non vendono un prodotto.
Per popolare rapidamente il prodotto, puoi eseguire questo:
insert into product (name, brand, model, ...)
select name, brand, model, ... from website1
union
select name, brand, model, ... from website2
union
select name, brand, model, ... from website3;
Cordiali saluti, l'uso di UNION
(anziché UNION ALL
) fa in modo che l'output dell'unione produca solo righe univoche