Ciao a tutti,
ho una tabella articoli (tblArticoli) ed una tabella categorie (tblCatProd) e delle relazioni molti a molti, dato che alcuni prodotti possono essere in più categorie. Per cui ho creato una terza tabella (tblCatProdArticoli) in cui ordino il prodotto all'interno della categoria ed al tempo stesso lo associo alla categoria.
tblArticoli
ID
Nome
tblCatProd
ID
Categoria
tblCatProdArticoli
ID
IDCatProd
IDArticolo
Ordine
Se faccio una query in cui mi vengano elencati tutti gli articoli mi vengono elencati due volte quelli che appartengono a due cateogorie.
SELECT tblArticoli.ID, tblArticoli.Nome
FROM tblArticoli INNER JOIN tblCatProdArticoli ON tblArticoli.ID = tblCatProdArticoli.IDArticolo
WHERE tblCatProdArticoli.IDCatProd IN (1, 2, 3, 4, 5, 6, 7, 8)
ORDER BY tblCatProdArticoli.Ordine ASC
Esiste un modo per vincolare la INNER JOIN in modo che stabilisca la relazione solo al primo record di questo legame "...ON tblArticoli.ID = tblCatProdArticoli.IDArticolo..."?
Oppure posso fare altro? Ho provato ad usare DISTINCT ma mi dice che "La cluasola ORDER BY (tblCatProdArticoli.Ordine) é in conflitto con DISTINCT.
Grazie mille a chi ha già incontrato questo blocco.
Ciao