Aller au contenu principal
Version: Next

SCAN INDEX

SCAN INDEX ( leChamp ; nombre {; > ou <} )

ParamètreTypeDescription
leChampChamp🡒Champ indexé avec lequel "scanner" les enregistrements
nombreEntier long🡒Nombre d'enregistrements à retourner
> ou <Opérateur🡒> à partir du début de l'index < à partir de la fin de l'index

Description

La commande SCAN INDEX retourne une sélection de nombre enregistrements de la table du champ leChamp. Cette commande est extrêmement rapide car elle utilise l'index.
Si vous passez <, SCAN INDEX retourne nombre enregistrements à partir de la fin de l'index (valeurs supérieures). Si vous passez >, SCAN INDEX retourne nombre enregistrements à partir du début de l'index (valeurs inférieures). Si vous ne passez pas le dernier paramètre, la commande retourne nombre enregistrements à partir du début de l'index (équivaut à passer >).

Note : La sélection obtenue n'est pas triée.

SCAN INDEX fonctionne uniquement avec des champs indexés. Cette commande modifie la sélection courante de la table pour le process courant et charge le premier enregistrement de la sélection en tant qu'enregistrement courant.

Si vous spécifiez un nombre d'enregistrements supérieur au nombre d'enregistrements présents dans la table, SCAN INDEX retourne tous les enregistrements.

Note : Cette commande ne prend pas en charge les champs de type Objet.

Exemple

L'exemple suivant envoie des lettres aux 50 plus mauvais clients puis aux 50 meilleurs clients :

 SCAN INDEX([Clients]TotalDû;50;<) // Obtenir la liste des 50 plus mauvais clients
 ORDER BY([Clients]CodePostal;>) // Trier par code postal
 FORM SET OUTPUT([Clients];"Menace")
 PRINT SELECTION([Clients]) // Imprimer les lettres
 SCAN INDEX([Clients]TotalDû;50;>) // Obtenir la liste des 50 meilleurs clients
 ORDER BY([Clients]CodePostal;>) // Trier par code postal
 FORM SET OUTPUT([Clients];"Remerciement")
 PRINT SELECTION([Clients]) // Imprimer les lettres

Voir aussi

ORDER BY
QUERY
REDUCE SELECTION