PDA

View Full Version : [ASP] query con diversi count


Stolen Child
11-08-2011, 05:53
salve a tutti,
avrei bisogno di un aiuto o un consiglio su come impostare una query sql per l'estrazione di dati da un database:

la tabella è composta da due campi: marca (circa una cinquantina di modelli) e taglia (tre soli tipi: XL, L, M).
per estrarre la quantità totale esistente per ogni marca ho creato la seguente query:

select marca, count (*) as totale from tabella group by (marca) order by count (*) desc

e tutto funziona perfettamente.

quello che non riesco creare, nonostante innumerevoli tentativi e ricerche, è una query che oltre alla quantità totale mi fornisca anche la quantità per ogni taglia.
i dati esposti in tabella che vorrei riuscire ad ottenere sono ad esempio:

marca | totale | taglia XL | taglia L | taglia M

lacoste | 10 | 5 | 3 | 2
nike |15 | 3 | 6 | 6
puma | 12 | 4 | 3 | 5


qualcuno è in grado di darmi qualche dritta? quello che ho capito è che mi servirebbe una query con diversi count, ma non so come impostarla....

grazie in anticipo

Dr Nick Riviera
23-08-2011, 21:05
Con una query di questo tipo ottieni un risultato più immediato senza troppi innesti o query sovraccariche:

select marca, taglia, count(taglia) as totale from tabella group by marca, taglia order by marca, taglia desc;

Non c'è il totale ma quello lo ricavi facilmente o con un'altra query o con l'ASP sommando i valori della query che ti ho scritto.
Il risultato della query è di questo tipo:

marca | taglia | totale |

adidas | XL | 1
adidas | L | 3
adidas | M | 2
adidas | S | 6
adidas | XS | 1
lacoste | XL | 5
lacoste | L | 4
lacoste | M | 2
lacoste | S | 3
lacoste | XS | 11
nike | XL | 2
nike | L | 2
nike | M | 4
nike | S | 7
nike | XS | 8
...

:burp: