Visualizzazione stampabile
-
sqlite sommare record
Salve a tutti, avrei bisogno di un aiuto , devo sommare dei valori memorizzati nel database appartenenti alla stessa categoria, cioè esempio QuantitàGIacenza 10,20,30, ho visto che per queste operazioni si usa il comando SUM.
Cursor c = dbHelper.rawQuery("SELECT SUM(QuantitàGIacenza) AS temp FROM mia_tabbella_database");
mi segnala sempre l' errore sotto rawQuery , non capisco perché .
mi potete aiutare con qualche esempio, grazzie
-
Quote:
Originariamente inviato da
extrema
Salve a tutti, avrei bisogno di un aiuto , devo sommare dei valori memorizzati nel database appartenenti alla stessa categoria, cioè esempio QuantitàGIacenza 10,20,30, ho visto che per queste operazioni si usa il comando SUM.
Cursor c = dbHelper.rawQuery("SELECT SUM(QuantitàGIacenza) AS temp FROM mia_tabbella_database");
mi segnala sempre l' errore sotto rawQuery , non capisco perché .
mi potete aiutare con qualche esempio, grazzie
Errore in compilazione o in esecuzione? Che genere di errore?
Cmq rawQuery è un metodo della classe SQLiteDatabase, e quindi devi avere un oggetto di questo tipo, e non SQLiteOpenHelper.
-
ma se le itineri tutte estrai i valori e li sommi? :)
Nik
-
Io uso una classse DatabaseHelper e un DBAdapter (non so se questo è il tuo caso)
se si potresti fare una cosa del genere:
Ciao
nik
-
Ciao Nik, grazie per la risposta, ci provo e ti faccio sapere.
iClaude76, grazzie anche a te, ma ho provato ad usare un oggetto della classe SQLiteDatabase, ma lo devo implementare ???
-
è appena sopra l'esempio
dimmi di che hai bisogno
Nik
-
buonasera, mi spiego meglio, il fatto che ho salvato nel database molti record sotto "QuantitàGIacenza" in effetti devo sommare tutti i suoi valori per ricavare il totale ma non riesco a capire il concetto, ci provi a spiegarmelo meglio grazie.
se faccio così:
dbHelper = new dbManage(this);
dbHelper.openToRead();
Cursor c = dbHelper.queueAll();
while (c.moveToNext()){
int sommaQuantitàGIacenza = c.getInt(c.getColumnIndex("QuantitàGIacenza"));
//oppure così :String sommaQuantitàGIacenza = c.getString(1);
la variabile sommaQuantitàGIacenza mi da solo l'ultimo inserimento e non la somma come faccio ad avere la somma di tutti i suoi valori?????
grazie
-
Usa una variabile d'appoggio la dichiari prima della while e poi: appoggio= appoggio + c.getInt(c.getColumnIndex("QuantitàGIacenza"));
Scusa ma ho scritto da cell
Nik
-
Ciao, con la tua procedura riesco a sommare la variabile di appoggio con quella estratta dal database, ma io vorrei sommare tutti i record appartenenti a QuantitàGiacenza ecco un esempio del mio database:
ID QuantitàGiacenza
1 10
2 20
3 15
4 5
ad ogni inserimento di un valore ID si autoincrementa, mi serve sapere la somma di QuantitàGiacenza come posso fare,
-
guarda che la variabile appoggio serve a quello tu la dichiari PRIMA DELLA WHILE
fammi sapere
nik