SELECT SUM() Ergebnis in Java abfragen

Status
Nicht offen für weitere Antworten.

isowiz

Mitglied
Mal zur Abwechslung ne ganz dumme Frage 🙂

Ich habe bisher mit Java immer Abfragen in der Art (SELECT * FROM irgendwo) gemacht und diese dann eben ueber das ResultSet und r.next ausgeben.
Jetzt habe ich aber eine Abfrage der Art (SELECT SUM(spaltex) FROM irgendwo) und bekomme damit ja nur einen Wert zurueck. Muss ich dafuer auch ein ResultSet nehmen oder wie laeuft hier die Ausgabe ab?
 
isowiz hat gesagt.:
...Jetzt habe ich aber eine Abfrage der Art (SELECT SUM(spaltex) FROM irgendwo)
und bekomme damit ja nur einen Wert zurueck.
Muss ich dafuer auch ein ResultSet nehmen ..?
Ja.
Code:
           ResultSet ergebnis = anweisung.executeQuery("Select sum(...) from ...");
            if(ergebnis.next()) {
                String summe = ergebnis.getString(1);
                System.out.println("Summe:  "+summe);
            }
 
Aha. Vielen Dank 🙂.
Hatte nur gedacht da gibt es eine extra Vorgehensweise, da keine Liste sondern nur ein Wert zurückgegeben wird. Aber wenn es das nicht gibt mach ich das eben so.

Gibt es einen Grund warum ein einzelner Wert genauso gehandhabt wird? Rein von der Logik sollte das anderes funktionieren, oder denke ich da faslch?
 
Nein, von der Logik her ist das genau richtig. Stell dir vor, du hast ein Statement wie
SELECT sum(Preis) as summe, Id
FROM `article`
GROUP BY Id
Dann werden mehrere Spalten zurückgegeben. Oder möchtest du wirklich, dass die Java-Klasse dein SQL-Statement erst analysiert (zu lasten der Performance), um dann zu entscheiden wieviele Werte zurückgegeben werden.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben