Newsgroup: it.comp.lang.visual-basic
Titolo: Group By e Sum di record In tabelle

Salve a tutti
programmi: VB6 (sp5) e SQL server 7
da due tabelle (sono in JOIN tra loro) ottengo un risultato in due step:
a) un primo raggruppamento per selezione di date e la somma di un campo
ottenendo tre colonne
Campo1                Campo2         Campo3
(Raggruppato)      (Somma)         (Raggruppato)
BarCode              Quantità           Data
b)in fase successiva devo eseguire un secondo raggruppamento eliminando il
campo data:
Campo1                Campo2
(Raggruppato)      (Somma)
BarCode               Quantità
Ho trovato due metodi :
1- Costruire una VIEW per il punto a , costruzione di un recordset per
ottenere il punto b , cancellazione della VIEW (per motivi lunghi da
spiegare non posso costruire delle VIEW o Stored Procedures "fisse"). Questo
comporta la costruzione e cancellazione di decine di VIEW al giorno.
Vado incontro a inconvenienti ?
2)- Costruire una tabella temporanea , inserire dento i dati , raggruppare
per ottenere il punto b. E' un metodo più lento rispetto al punto
precedente.
3)- Avete qualche altro suggerimento ?
Grazie
giuseppeD

 ha scritto nel messaggio
news:Bdm57.135803$cd.7...@news1.tin.it...
[CUT]
non capisco se tu vuoi ottenere due recordset distinti o se ti serve solo
l'ultimo, se cosě fosse penso si possa fare con un'unica query.
Se ti servono altre idee dimmelo pure...
ciao

 spiegare non posso costruire delle VIEW o Stored Procedures "fisse").
Questo
[...]
Se hai bisogno di entrambi i recordset in momenti diversi perchè non:
SELECT Barcode,SUM(quantità),Data from tuatabella GROUP BY Barcode, data
e
SELECT Barcode,SUM(quantità) from tuatabella GROUP BY Barcode
Quando hai bisogno del primo lanci il primo, quando hai bisogno del secondo
lanci il secondo...
Oppure non ho capito cosa chiedi:)
ciao
Alfonso

Salve
riprendo il post di mercoledì 18 luglio 2001 22:21 e spero che questa volta
l'esposizione sia migliore:
quello che devo ottenere è un totale (origine dati due tabelle in JOIN) per
ogni BarCode selezionando due date (da a a). Se raggruppo e sommo
selezionando la data di inizio 01/01/2001 e la data di fine 28/02/2001,
ottengo per esempio il seguente recordset:
1-Primo recordset (VIEW)
Campo1              Campo2      Campo3
(Raggruppato)     (Somma)      (Raggruppato)
A                          100              01/01/2001
A                          150              05/01/2001
A                          170              20/01/2001
B                          150              15/01/2001
B                          130              25/02/2001
B                          150              15/02/2001
2-Secondo recordset GROUP BY e SUM del primo
Per ottenere la seguente risposta
Campo1              Campo2
(Raggruppato)     (Somma)
A                          420
B                          430
Per ottenere il risultato finale attualmente costruisco una VIEW per il
primo recordset che successivamente ragguppo e sommo per ottenere il secondo
Dopo la lettura dei dati cancello la VIEW.
Questo perchè devo costruire un report totale,da una data,fino a una data,da
una data a un altra
e da diversi PC.
E' possibile partendo dalle tabelle arrivare al risultato finale senza
costruire VIEW o tabelle temporanee ma in modi diretto,
Grazie
giuseppeD

Salve
(inviato giovedì 19 luglio 2001 22:50 ma non presente. Provo a inviarlo di
nuovo)


 riprendo il post di mercoledě 18 luglio 2001 22:21 e spero che questa
volta
[...]