Version 3
SCAN INDEX (Feldname; AnzDatensätze{; > oder <})
Parameter | Typ | Beschreibung | |
Feldname | Datenfeld | Indiziertes Datenfeld | |
AnzDatensätze | Numerisch | Anzahl der ausgewählten Datensätze | |
> oder < | > erste Datensätze, < letzte Datensätze | ||
sortiert nach dem Index |
Beschreibung
Der Befehl SCAN INDEX wählt die ersten oder die letzten AnzDatensätze der Tabelle, sortiert nach dem Index. Dieser Befehl ist sehr schnell, da er nur auf indizierte Datenfelder angewandt werden kann. Ist das Datenfeld nicht indiziert, wird der Befehl ignoriert.
Bei > werden die ersten AnzDatensätze zurückgegeben.
Bei < werden die letzten AnzDatensätze zurückgegeben.
Hinweis: Die erhaltene Auswahl wird nicht sortiert.
Der Parameter > oder < ist optional. Wird er nicht angegeben, werden die ersten AnzDatensätze zurückgegeben.
Dieser Befehl ändert die aktuelle Auswahl der Tabelle für den laufenden Prozess. Es gibt jedoch keinen aktuellen Datensatz.
Geben Sie mehr Datensätze an, als die Tabelle enthält, gibt SCAN INDEX alle Datensätze zurück.
Beispiel
Folgendes Beispiel schickt Briefe an die 50 schlechtesten und dann an die 50 besten Kunden:
SCAN INDEX([Customers]TotalDue;50;<) ` Erhalte die 50 schlechtesten Kunden ORDER BY([Customers]PLZ;>) ` Sortiere nach Postleitzahl OUTPUT FORM([Customers];"Schimpfbrief") PRINT SELECTION([Customers]) ` Drucke die Briefe SCAN INDEX([Customers]TotalDue;50;>) ` Erhalte die 50 besten Kunden ORDER BY([Customers]PLZ;>) ` Sortiere nach Postleitzahl OUTPUT FORM([Customers];"Dankesbrief") PRINT SELECTION([Customers]) ` Drucke die Briefe
Referenz
ORDER BY, QUERY, REDUCE SELECTION.