Ciao a tutti.
Sto realizzando un database che contiene un elenco di articoli, suddiviso in due tabelle. Una contiene l'elenco delle categorie, e l'altra gli articoli veri e propri (ciascuno appartenente alla sua categoria).

Come struttura del database, per allegerirlo, avevo pensato a mettere il numero di articoli presente nelle categorie nella stessa tabella delle categorie. Numero che si incrementa ogni volta si inserisce un articolo.

La query quindi risultava semplicissima:
codice:
sql="SELECT * " & _
    "FROM Shop_Categorie " & _
    "WHERE NumArticoli > 0 " & _
    "ORDER BY Categoria"
Ho pensato però che, onde evitare errori nell'inserimento degli articoli, e che si sporchi il numero di articoli (che ne so, un inserimento andato male, una modifica diretta sul database, ci sono più fattori che potrebbero alterare quel numero) avrei potuto usare una query di questo genere:

codice:
  
sql=" SELECT   Shop_Categorie.IDCat,                      " &_
    "          Shop_Categorie.Categoria,                  " &_
    "          Count(Shop_Articoli.IDArt) AS NumArticoli  " &_
    " FROM     Shop_Categorie, Shop_Articoli              " &_
    " WHERE    Shop_Categorie.IDCat = Shop_Articoli.IDCat " &_
    " GROUP BY Shop_Categorie.IDCat,                      " &_
    "          Shop_Categorie.Categoria                   " &_
    " ORDER BY Shop_Categorie.Categoria                   "
Questa query funziona benissimo, mi da gli stessi risultati e mi evita di utilizzare il campo NumArticoli contenente il numero di articoli da calcolare ogni volta che se ne inserisce uno...

Il punto è... quest'ultima query è molto dispendiosa in termini di performances? Dovrei forse usare il primo metodo?

Un'altra domanda... c'è un tool in ASP x esempio o uno script che mi può dire i tempi di risposta e le prestazioni in genere del database con l'una o l'altra query sopra scritta?

Aspetto notizie fiducioso.
Ciao a tutti!