• User Newbie

    Problemi con un "group by"

    Ciao a tutti,
    ho un problema con una query un po' complicata e una somma

    allora, ho tre tabelle
    CATALOGO dove ho l'elenco dei prodotti
    ORDINI dove ho l'elenco degli ordini
    DETTAGLIORDINI dove ho l'elenco dei prodotti comprati

    Voglio avere i più venduti facendo la somma delle quantità (tabella DETTAGLIORDINI)

    io ho scritto questo:

    "SELECT sum(d.quantita) as tot, d.prodottoID, d.ordiniid, c.titolo, c.peso_netto, c.descrizione, c.prezzo, c.prezzo_barrato, c.immagine, o.ordiniid, o.archivio FROM dettagliordine d, catalogo c, ordini o WHERE d.prodottoID = cstr(c.id) and o.ordiniid = d.ordiniid and o.archivio = 0 and c.archivia = 0 group by d.prodottoID, c.titolo, c.peso_netto, c.descrizione, c.prezzo, c.prezzo_barrato, c.immagine, d.ordiniid, o.ordiniid, o.archivio ORDER BY sum (d.quantita) desc"

    tutto funziona solamente che non mi raggruppa i prodotti cioè

    io vorrei

    VINO - 10 prodotti
    CIBO - 3 prodotti

    invece mi esce questo

    VINO - 6 prodotti
    CIBO - 2 prodotti
    VINO - 2 prodotti
    VINO - 2 prodotti
    CIBO - 1 prodotto

    sarebbe tutto semplice perchè basterebbe contare la somma dei diversi prodotti nella tabella DETTAGLIORDINI
    ma
    devo collegarmi alla tabella CATALOGO per avere i dati del prodotti (c.titolo, c.peso_netto, c.descrizione, c.prezzo, c.prezzo_barrato, c.immagine) e selezionare i prodotti non archiviati (c.archivia = 0)
    e alla tabella ordini perchè devo solamente selezionare gli ordini non archiviati (o.archivio = 0)

    sapete aiutarmi?
    grazie mille!