Buonasera,
ho le seguenti tabelle

tab1
id_tab1 | ordinato | id_articolo

tab2
id_tab2 | id_articolo | cod_colore

la relazione tra tab1 e tab2 è uno a molti


ho la seguente query che mi recupera la somma degli articoli ordinati

select sum(tab1.ordinato) as somma from tab1 left join tab2 on tab2.id_articolo = tab1.id_articolo

il problema c'è quando ho un articolo con più colori e quindi mi va a sommare più volte l'ordine es

tab1
1 | 5 | 20

tab2
5 | 20 | ff0000
6 | 20 | ff00ff

eseguendo la query ottengo somma = 10

cosa sbaglio?

Codice PHP:
CREATE TABLE `tab1` (
  `
id_tab1int(3NOT NULL auto_increment,
  `
ordinatoint(2NOT NULL,
  `
id_articoloint(2NOT NULL,
  
PRIMARY KEY  (`id_tab1`)
ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=;

INSERT INTO `tab1VALUES (1520);


CREATE TABLE `tab2` (
  `
id_tab2int(3NOT NULL auto_increment,
  `
id_articoloint(2NOT NULL,
  `
cod_colorevarchar(6NOT NULL,
  
PRIMARY KEY  (`id_tab2`)
ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=;

INSERT INTO `tab2VALUES (120'ff0000');
INSERT INTO `tab2VALUES (220'ff00ff');

SELECT SUMtab1.ordinato ) AS somma
FROM tab1
LEFT JOIN tab2 ON tab2
.id_articolo tab1.id_articolo 
Grazie