Announcement

Collapse
No announcement yet.

Doppelte Daten schnell sortieren

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Doppelte Daten schnell sortieren

    Hallo zusammmen,
    ich habe 5 DBF-Dateien, in denen insgesamt ca. 35.000 Datensätze sind. Jede
    Tabelle hat 5 Spalten. In der ersten Spalte sind stellenweise gleiche nummern. Wenn das der Fall ist, dann muß ich von den letzten beiden Spalten
    eine Summe bilden. Im Moment copiere ich die Daten in eine neue Tabelle und wenn die Nummer schon vorhanden ist, dann addiere ich die neuen Werte zu den alten. Ist die Nummer nicht vorhanden copiere ich sie einfach. Wenn ich
    das Programm starte, dauert es ca. 30 min. geht es auch schneller?

  • #2
    Hallo Maik,

    es gibt eigentlich zwei Möglichkeiten:<br>

    1. Du erstellst einen Index über das betroffene Feld (Nummer) und aktivierst den Index somit sind Deine Datensätze in<br>
    der benötigten Reihenfolge. Dann programmierst Du einen Gruppenwechsel mittels einer Zwischenvariable wo Du Dir die
    letzte Nummer merkst zB so:<br>

    Table.IndexFieldNames:='Nummer'; // Index setzen (muß vorhanden sein)<br>
    Summe:=0; <br>
    if Table.FindFirst {DS vorhanden ?} then begin <br>
    SaveNr:=Table.FieldValues['Nummer'];<br>
    repeat<br>
    if SaveNr<>Table.FieldValues['Nummer'] then begin<br>
    // irgendwas machen mit Deiner Summe<br>
    Summe:=0;<br>
    SaveNr:=Table.FieldValues['Nummer'];<br>
    end;<br>
    Summe:=Summe+Table.FieldValues['Betrag'];<br>
    until (not Table.FindNext); //bis keine DS mehr vorhanden<br>
    end;<br>

    Kann sein das Fehler drin sind, Ich habe das einfach so runtergetippt.<br>

    2. mit SQL Abfrage seihe Hilfe SELECT SUM()...

    Ich hoffe ich habe nicht das Thema verfehlt.
    Gruß Andr

    Comment


    • #3
      Danke dir Andre, werde es die Tage mal probieren.
      Mai

      Comment

      Working...
      X