Newsgroup: it.comp.lang.visual-basic
Titolo: SELECT CON SUM

Salve a tutti mi kiamo federico e ho un piccolo problema con un mio
applicativo. spero che qualkuno mi riesca a risolvere tale problema
Ho un database con ex: 500 record formate da 3 colonne
CODICE-DESCRIZIONE-QUANTITA
Tale database risiede su server e quindi via ODBC.
Io sto usando nel programa una select che voglio che mi raggruppi per ogni
singolo codice e descrizione, la somma delle quantità relativo a quel
codice e descrizione
EX: DATABASE INIZIALE:
CODICE-DESCRIZIONE-QUANTITA
  24    BISCOTTI      2
  24    BISCOTTI      3
  24    BISCOTTI      1
  25    FROLLINI      1
  25    FROLLINI      4
EX: DATABASE FINALE:
CODICE-DESCRIZIONE-QUANTITA
  24    BISCOTTI      6
  24    FROLLINI      5ù
Io ho provato cosi' pero' mi da errore
Sql = "SELECT CODICE,SUM(QUANTITA) AS SOMMA FROM ARTICOLI WHERE ANNO=2006
GROUP BY CODICE"
Chi mi puo' aiutare?
Attendo vostre notizie. Grazie
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 GROUP BY CODICE"
A parte che continuo a non capire questa moda del "mi da errore" e poi non 
comunicare agli altri che errore da'...
Cmq, l'unica cosa fuori posto e' lo WHERE. Dove lo vedi il campo anno nel 
database di esempio? A parte quello, la query e' perfetta (sempre se si 
parla di Access o SQL Server, per altri db non garantisco)

 Attendo vostre notizie. Grazie
Il campo 'ANNO' non esiste nella tabella che citi.
L'errore che ti viene segnalato non è chiarissimo.
In italiano non si usa la K.
Alberto
-- 
A questo punto hanno trovato un muro,
un muro duro, molto molto duro,
che siamo noi.

Salve a tutti mi chiamo federico e ho un piccolo problema con un mio
applicativo. spero che qualcuno mi riesca a risolvere tale problema
Ho un database con ex: 500 record formate da 4 colonne
CODICE-DESCRIZIONE-QUANTITA-ANNO
Tale database risiede su server e quindi via ODBC.
Io sto usando nel programa una select che voglio che mi raggruppi per ogni
singolo codice e descrizione, la somma delle quantità relativo a quel
codice e descrizione
EX: DATABASE INIZIALE:
CODICE-DESCRIZIONE-QUANTITA-ANNO
24      BISCOTTI      2     2006
24      BISCOTTI      3     2006
24      BISCOTTI      1     2006
25      FROLLINI      1     2006
25      FROLLINI      4     2006
EX: DATABASE FINALE:
CODICE-DESCRIZIONE-QUANTITA-ANNO
24      BISCOTTI      6     2006
24      FROLLINI      5     2006
Io ho provato cosi':
Sql = "SELECT CODICE,SUM(QUANTITA) AS SOMMA FROM ARTICOLI WHERE ANNO=2006
GROUP BY CODICE"
In pratica questa select la esegue correttamente nel senso il numero dei
record estratti è giusto, pero' non riesco a prelevare il valore della
somma per ciascun codice. cioe' somma è nullo.
Chi mi puo' aiutare?
Attendo vostre notizie. Grazie


 Attendo vostre notizie. Grazie
La prima cosa che mi viene in mente è che il campo 'ANNO' sia di tipo 
non numerico, ad esempio che sia un char, per cui la conversione 
implicita che richiedi nella Where vada verso char e non verso Numeric, 
con conseguente aggiunta di decimali e separatori.
Aggiungiamo che la Select che scrivi non potrà mai fornirti il 
risultato desiderato, visto che non estrai nè la descrizione nè l'anno, 
ma solamente codice e somma. Ma questo forse dipende da una errata 
trascrizione della select.
Per ulteriori dettagli, servirebbe almeno sapere che dbms utilizzi, 
perchè la sintassi SQL cambia da dbms a dbms.
Ciao


Ciao Alberto grazie di avermi risposto. Allora in base alla tua risposta.
adesso ti rispondo io.
Io uso come DBMS (ORACLE), e poi la colonna della QUANTITA' è di tipo
numerico.
Attendo risposte.Grazie


 numerico.
Che Quantità fosse numerico, non avevo dubbi.
Infatti parlavo del campo 'Anno', che deve assolutamente essere 
numerico (per la sintassi che hai utilizzato tu).


ALBE MA IO CREDO CHE IL PROBLEMA NON SIA L'ANNO. IL PROBLEMA è CHE NON LA
SELECT MI FA IL GROUP BY DLE CODICE BENE, MA LA VARIABILE SOMMA è NULLA.


 
Ecco, Cominciamo dagli errori a monte.

 SELECT MI FA IL GROUP BY DLE CODICE BENE, MA LA VARIABILE SOMMA è NULLA.
....'cazzo urli!
uffa che palle......Fai un po di debug in proprio perchè te lo
dobbiamo fare noi????....
caricati deli dati di prova nella tabella
poi fai un
SELECT CODICE,QUANTITA FROM ARTICOLI WHERE ANNO=2006
e controlla che cosa spara fuori......
se spari i codici e accanto le quantità il
WHERE anno=2006 è corretto e smettiamo di romperti le scatole in quel
punto!
Ora controlla quantità.....son numeri? altrimenti non puoi sommare un
piffero!
ci sono  virgole punti campi nulli?
SUM si usa così in oracle? (io non lo so...mai usato)
si si.....
prova a non mettere AS qualcosa di altro
....per vedere se è un alias farlocco casomai "SOMMA" è il nome di
una funzione...chiamalo AS MiaSommaDelCaz che non credo sia un function
di Oracle!
