AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Summieren von Datensätzen!!
Thema durchsuchen
Ansicht
Themen-Optionen

Summieren von Datensätzen!!

Ein Thema von Cancer · begonnen am 7. Sep 2004 · letzter Beitrag vom 7. Sep 2004
Antwort Antwort
Cancer

Registriert seit: 31. Mai 2004
17 Beiträge
 
#1

Summieren von Datensätzen!!

  Alt 7. Sep 2004, 12:08
Also Leutz HI
Und zwar habe ich folgenden Code gefunden.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var gesamtzahl: integer;
begin
  // Verhindern, dass die Anzeige ständig aktualisiert wird:
  Table1.DisableControls;
  Table1.first;
  gesamtzahl:=0;
  while not Table1.eof do begin
    if Table1.FieldByName('Artikel').AsString='Radiergummithen
      gesamtzahl:=gesamtzahl+Table1.FieldByName('Anzahl').AsInteger;
    Table1.next;
  end;
  Table1.EnableControls;
  Label1.Caption:='Radiergummis: '+IntToStr(gesamtzahl);
end;
Wie kann ich diesen Code jetzt so ändern das, das Programm mir eine Ausgabe macht wie oft jetzt das Wort Radiergummi in der DB vorkommt??
  Mit Zitat antworten Zitat
Cancer

Registriert seit: 31. Mai 2004
17 Beiträge
 
#2

Re: Summieren von Datensätzen!!

  Alt 7. Sep 2004, 12:11
Ist Okeh Leute habe es eben selber zufällig rausbekommen.

Hier der geänderte Code
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
var gesamtzahl: integer;
begin
  // Verhindern, dass die Anzeige ständig aktualisiert wird:
  DataModule2.TableVideo.DisableControls;
  DataModule2.TableVideo.First;
  gesamtzahl:=0;
  while not DataModule2.TableVideo.Eof do begin
    if DataModule2.TableVideo.FieldByName('Genre').AsString = LabeledEdit1.Text then
      gesamtzahl:=gesamtzahl+DataModule2.TableVideo.IndexFieldCount;
    DataModule2.TableVideo.Next;
  end;
  DataModule2.TableVideo.EnableControls;
  Label1.Caption:=LabeledEdit1.Text+': '+IntToStr(gesamtzahl);

end;
Ist zwar an mein Programm angepasst, aber ihr werdet den Unterschied bestimmt sehen!!
  Mit Zitat antworten Zitat
franktron

Registriert seit: 11. Nov 2003
Ort: Oldenburg
1.446 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#3

Re: Summieren von Datensätzen!!

  Alt 7. Sep 2004, 12:33
@Cancer

dein code hat einen Fehler

Delphi-Quellcode:
gesamtzahl:=gesamtzahl+DataModule2.TableVideo.IndexFieldCount;

müsste
gesamtzahl:=gesamtzahl+1;
heissen sonnst zählt er jedesmal die Anzahl der Felder der Tabelle hoch und nicht die Anzahl (felder*AnzTyp)
und du wilst doch AnzTyp haben :wink: .
und um die Anzahl der Daten zu finden gibst 2 Möglichkeiten die halbwegs schnell sind

1.
Delphi-Quellcode:
Table.Filter:='typ='+#39+Typ+#39;
Table.Filtered:=True;
anzahl:=Table1.RecordCount;
2. Die schnellste

SQL-Code:
SELECT COUNT(typ) as anzahl
FROM tabname
WHERE typ=:typ
Delphi-Quellcode:
Query1.ParamByName('typ').Text:=Typ;
Query1.Active:=True;
Anzahl:=Query1.FieldByName('anzahl').Value;
Query1.Active:=False;
Frank
Tux sein Lieblingsquellcode
While anzfische<TuxSatt do begin
Fisch:=TFisch.Create; Tux.EssenFisch(Fisch); Fisch.Free;inc(anzfische); end;
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz