4D v14.3SCAN INDEX |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
SCAN INDEX
|
SCAN INDEX ( aField ; number {; > or <} ) | ||||||||
Parameter | Type | Description | ||||||
aField | Field |
![]() |
Indexed field on which to scan index | |||||
number | Longint |
![]() |
Number of records to return | |||||
> or < | Operator |
![]() |
> from beginning of index < from end of index | |||||
SCAN INDEX returns a selection of number records from the table containing the aField field. If you pass <, SCAN INDEX returns the number of records from the end of the index (high values). If you pass >, SCAN INDEX returns the number of records from the beginning of the index (low values). This command is very efficient because it uses the index to perform the operation.
Note: The selection obtained is not sorted.
SCAN INDEX only works on indexed fields. This command changes the current selection of the table for the current process and loads the first record of the selection as the current record.
If you specify more records than exist in the table, SCAN INDEX will return all the records.
The following example mails letters to 50 of the worst customers and then to 50 of the best customers:
SCAN INDEX([Customers]TotalDue;50;<) ` Get the 50 worst customers
ORDER BY([Customers]Zipcode;>) ` Sort by Zip codes
FORM SET OUTPUT([Customers];"ThreateningMail")
PRINT SELECTION([Customers]) ` Print the letters
SCAN INDEX([Customers]TotalDue;50;>) ` Get the 50 best customers
ORDER BY([Customers]Zipcode;>) ` Sort by Zip codes
FORM SET OUTPUT([Customers];"Thanks Letter")
PRINT SELECTION([Customers]) ` Print the letters
Product: 4D
Theme: Selection
Number:
350
Created: < 4D v6
ORDER BY
QUERY
REDUCE SELECTION
4D Language Reference ( 4D v12.4)
4D Language Reference ( 4D v14 R2)
4D Language Reference ( 4D v13.5)
4D Language Reference ( 4D v14 R3)
4D Language Reference ( 4D v14.3)
4D Language Reference ( 4D v14 R4)
Inherited from : SCAN INDEX ( 4D v11 SQL Release 6)