Newsgroup: it.comp.appl.access
Titolo: Si può fare un loop in una query?

Salve al NG.
Vorrei un consiglio sul seguente problema:
supponiamo una tabella Fatture, con un campo Data, e supponiamo i record
ordinati cronologicamnete. Volendo, a fini statistici, contare le fatture
emesse nei singoli mesi, la query dovrebbe essere
Sum(Month([Fatture].[Data])=1)*-1
AS Gennaio, Sum(Month([Fatture].[Data])=2)*-1 AS Febbraio ecc.
Ora io mi chiedo se in una query sia possibile un loop e una variabile
indicizzata, in modo da fare qualcosa del tipo
DIM Mese(1 to 12) as INTEGER
FOR I = 1 to 12
 Sum(Month([Fatture].[Data])=I)*-1 AS Mese(I)
NEXT I
Se non è possibile farlo in una query, lo si può fare nel codice.
Ma esiste il comando Sum in Visual Basic? E come si mette il risultato del
calcolo in un Form? E se il suddetto form ha altri risultati di una query
come si fa a mettere questo e quelli?
Magari ci sono altri comandi che non conosco che risolvono alla grande il
problema.
Grazie a chi mi potrà chiarire i dubbi
Filippo

 emesse nei singoli mesi, la query dovrebbe essere
Scusa eh? Tu vuoi sapere quante fatture sono state emesse per ogni mese?
Fai una query di raggruppamento sul campo calcolato
month(date) con uno dei campi in cui ci metti la funzione conteggio.
Antonio

 ha scritto nel messaggio
news:as%s7.6473$MM2.7...@news.infostrada.it...

E' quello che gli ho detto io, ma sembra che non gli piace. :-)
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 Roberto
Ti ringrazio, ma quando me l'hai detto? Io non ho trovato nessuna risposta
al mio precedente post.
Comunque non ho capito come fare.... potresti essere più preciso? In verità
non ho molta dimestichezza con le query di raggruppamento :)
Grazie,
Filippo

 ha scritto nel messaggio
news:9p2e9p$899$1...@news.panservice.it...

Questo è il mio messaggio inviato al NG il 26/9/2001 alle ore 0:32
========================
Ti scondiglio di chiamare Data un tuo oggetto: è un nome riservato di
Access; nel mio esempio il campo che contiene la data della fattura lo
chiamerò pertanto Data1.
Se quindi la tua tabella Fatture contiene un campo con tipo dati Data/ora,
usa una query di raggruppamento che abbia il seguente codice SQL:
SELECT Format([Data1],"yyyy") & "/" & Format([Data1],"mmm") AS Mese,
Count(Data1) AS ConteggioFatture
FROM Tabella1
GROUP BY Format([Data1],"yyyy") & "/" & Format([Data1],"mmm"),
Year([Data1])*100+Month([Data1])
ORDER BY Year([Data1])*100+Month([Data1]);
--
Roberto
===========================


 non ho molta dimestichezza con le query di raggruppamento :)
Forse hai dimenticato di sincronizzare il ng prima di postare nuovamente la
domanda.
Sib
--
----------------------------------------------------
la mia home:
http://digilander.iol.it/syb
----------------------------------------------------
il sito comune di it.comp.database.access:
http://www.sitocomune.com
----------------------------------------------------
4000 anni fa', il saggio egizio Ptahhotep scrisse:
"... perche' non esistono saggi per nascita."
------------------------------------------------------
Saturiamo ECHELON:
bomba saddam attentato medio oriente