query complessa con php e visualizzazione risultati

lorenzo84

Utente Attivo
22 Lug 2012
239
0
16
Salve a tutti. Sono riuscito a creare due query distinte ma il problema è che devo generare una tabella dinamica. Io ho due tabelle, Categorie_prodotti e prodotti. Devo contare praticamente quanti prodotti ci sono per ogni categoria ma lo dovrei fare mentre estraggo contemporaneamente i dati per la tabella.
Avete qualche idea?
 
intendi cosi?
Codice:
SELECT count(idProdotto) as conta, categoria FROM prodotti GROUP BY categoria
puoi aggiungere la tabella categoia con una JOIN
Codice:
SELECT count(idProdotto) as conta, categoria 
FROM prodotti 
JOIN categorie USING (id_categoria)
GROUP BY id_categoria
ho scritto di getto , non ho testato
 
Ultima modifica:
intendi cosi?
Codice:
SELECT count(idProdotto) as conta, categoria FROM prodotti GROUP BY categoria
puoi aggiungere la tabella categoia con una JOIN
Codice:
SELECT count(idProdotto) as conta, categoria 
FROM prodotti 
JOIN categorie USING (id_categoria)
GROUP BY id_categoria
ho scritto di getto , non ho testato

Ciao!!! grazie per la risposta.

SELECT count(id_Prodotti) as conta, nome_cat_prodotti
FROM prodotti
JOIN categ_prodotti USING (id_cat_prodotti)
GROUP BY id_cat_prodotti

in questo modo conta tutti le categorie che hanno prodotti assegnati ma le categorie senza prodotti non vengono visualizzate....
 
andando a caso ho provato questa:

SELECT categ_prodotti.id_cat_prodotti,
categ_prodotti.nome_cat_prodotti,categ_prodotti.img_cat_prodotti,
categ_prodotti.stato_cat_prodotti,categ_prodotti.peso_cat_prod,
count(prodotti.id_prodotti) as totale FROM categ_prodotti left JOIN prodotti ON categ_prodotti.id_cat_prodotti = prodotti.id_cat_prodotti group by categ_prodotti.id_cat_prodotti";

sembra funzionare . le categorie con zero prodotti risultano a 0 ma le visualizza.

è giusta secondo te?è la prima volta che devo fare una query del genere...

grazie
 
forse ti basta usare LEFT JOIN al posto di JOIN
Codice:
SELECT count(id_Prodotti) as conta, nome_cat_prodotti
FROM prodotti
LEFT JOIN categ_prodotti USING (id_cat_prodotti)
GROUP BY id_cat_prodotti
 

Discussioni simili