Summe einer Spalte vin DBGrid oder Table

Wie kann ich die Summe aller Einträge einer Spalte eines DBGrids bzw. die Summe eines Feldes (aller Datensätze) einer Tabelle bilden um sie in einem TEdit darzustellen

Vielen Dank

E. B.

Hallo,

Wie kann ich die Summe aller Einträge einer Spalte eines
DBGrids bzw. die Summe eines Feldes (aller Datensätze) einer
Tabelle bilden um sie in einem TEdit darzustellen

es gibt zwei Möglichkeiten (vermutlich noch mehr):

  1. Du gehst die Tabelle mit NEXT durch und liest jeweils das Feld aus (musst dabei das Grid „tot“ schalten, sonst siehst du da, wie du durchgehst und es dauert entsprechend länger)

  2. Besser: du machst eine SQL-Query für diese Tabelle:
    SELECT SUM(Feldname) FROM Tabellenname
    dann liest du nur noch die Summe aus der Query.

Gruss, Niels

Danke für SQL-Tip aber Frage:…
Habe mich für die SQL-Variante entschieden. Machte TQuery und TQueryConnection und die empfohlene Zeile:

„SELECT SUM(Feldname) FROM Tabellenname“

Compiliert ohne Fehler:

Aber wie bekomme ich das Summenergebnis aus dem SELECT SUM in das TEdit hinein ?

Vielen Dank

E. B.

Hallo,

„SELECT SUM(Feldname) FROM Tabellenname“

Aber wie bekomme ich das Summenergebnis aus dem SELECT SUM in
das TEdit hinein ?

Edit1.Text := IntToStr(Query1.Fields[0].AsInteger);

Gruss, Niels

Hallo,

habe endlich Zeit gefunden den Trick auszuprobieren.
Leider ist dabei eine Fehlermeldung gekommen:

„…EListError…Listenindex überschreitet das Maximum (0)…“

Wenn Du vielleicht noch einen Tip hast - Vielen Dank

E. B.

Aber wie bekomme ich das Summenergebnis aus dem SELECT SUM in
das TEdit hinein ?

Edit1.Text := IntToStr(Query1.Fields[0].AsInteger);

SQL-Probleme inzwischen gelösst - vielen Dank !!

Hallo,

habe die SQL-Probleme zwischenzeitlich in den Griff bekommen. Vielen Dank an Niels und die anderen aus dem Forum !!!

Grüße aus Neuruppin / Brandenburg

E. B.