LOCATE-Befehl
Sucht den ersten Datensatz, der dem angegebenen Wert oder der Bedingung entspricht, oder springt auf die angegebene Datensatznummer.
Syntax
LOCATE {IF Test <WHILE Test> <FIRST Bereich|NEXT Bereich>|RECORD Zahl}
Parameter
Name | Beschreibung |
---|---|
IF Test |
Der Wert oder die Bedingung, nach dem/der gesucht werden soll. Sie müssen Zeichenliterale in Anführungszeichen setzen und Datumzeit-Werte in Backquotes. |
WHILE Test Optional |
Ein bedingter Ausdruck, der wahr sein muss, damit ein Datensatz verarbeitet wird. Der Befehl wird ausgeführt, bis die Bedingung falsch ist oder das Tabellenende erreicht wurde. Hinweis Wenn Sie WHILE zusammen mit FIRST oder NEXT verwenden, endet die Datensatzverarbeitung, sobald eine Grenze erreicht wird. |
FIRST Bereich | NEXT Bereich Optional |
Die Anzahl der zu verarbeitenden Datensätze:
Verwenden Sie Bereich, um die Anzahl der zu verarbeitenden Datensätze anzugeben. Wenn Sie FIRST und NEXT nicht angeben, werden standardmäßig alle Datensätze verarbeitet. |
RECORD Zahl |
Die zu suchende Datensatznummer. |
Beispiele
Ersten Datensatz finden, der einem angegebenen Wert entspricht
Die folgenden Beispiele veranschaulichen die Verwendung von LOCATE, um das erste Vorkommen eines spezifischen Werts in einer Tabelle zu finden:
LOCATE IF Lieferantenname = "United Equipment"
LOCATE IF Lieferantenname = "Uni"
LOCATE IF Rechnungsbetrag > 1000
LOCATE IF Rechnungsdatum = `20141231`
Ersten Datensatz finden, der einer angegebenen Bedingung oder einem Ausdruck entspricht
Die folgenden Beispiele veranschaulichen die Verwendung von LOCATE, um das erste Vorkommen in einer Tabelle zu finden, das einer angegebenen Bedingung oder einem Ausdruck entspricht:
LOCATE IF Lieferantenname = "United Equipment" AND Rechnungsbetrag > 1000 AND Rechnungsdatum > `20140930`
LOCATE IF Lieferantenstadt = v_Stadt
Datensatz nach Datensatznummer finden
Das folgende Beispiel veranschaulicht die Verwendung von LOCATE, um auf einen bestimmten Datensatz in einer Tabelle zu springen:
LOCATE RECORD 50
Bemerkungen
Hinweis
Weitere Informationen über die Funktion dieses Befehls finden Sie in Hilfe für Analytics.
Funktionsweise
Verwenden Sie den LOCATE-Befehl, um direkt auf den ersten Datensatz einer Tabelle zu springen, der dem angegebenen Wert oder der Bedingung entspricht.
Wenn der angegebene Wert oder die Bedingung gefunden werden, wird der erste übereinstimmende Datensatz in der Tabelle ausgewählt. Wenn der angegebene Wert oder die Bedingung nicht gefunden wurde, erfolgt eine Positionierung auf dem ersten Datensatz der Tabelle.
Sie können LOCATE auch verwenden, um direkt eine angegebene Datensatznummer aufzurufen.
LOCATE im Vergleich mit FIND und SEEK
Im Gegensatz zu den Befehlen FIND und SEEK ist der Befehl LOCATE nicht auf das Durchsuchen einer indizierten Tabelle oder eines einzelnen Zeichenfelds beschränkt. Mit LOCATE können Sie nach Literalen beliebigen Typs oder einem Ausdruck suchen, der einen beliebigen Datentyp oder eine Mischung von Datentypen verwendet.
Wenn der Befehl LOCATE zum Durchsuchen einer nicht indizierten Tabelle verwendet wird, kann er wesentlich langsamer als FIND oder SEEK sein, weil er jeden Datensatz der Tabelle sequenziell verarbeiten muss. Die notwendige Verarbeitungsdauer hängt von der Größe der Tabelle, dem Ort eines übereinstimmenden Datensatzes und auch davon ab, ob Sie den Suchbereich durch WHILE, FIRST oder NEXT eingrenzen.
Teilweise Übereinstimmung unterstützt
Teilweise Übereinstimmungen werden bei Zeichensuchen unterstützt. Der Suchwert kann sich also in einem längeren Wert des durchsuchten Felds oder der Felder befinden. Um eine Übereinstimmung zu erhalten, müssen die Suchwerte aber am Beginn der Felder erscheinen.
Teilweise Übereinstimmung aktivieren oder deaktivieren
Sie können die teilweise Übereinstimmung mit dem SET-Befehl oder einer Einstellung im Dialogfeld Optionen aktivieren oder deaktivieren:
Teilweise Übereinstimmung aktivieren | Teilweise Übereinstimmung deaktivieren |
---|---|
Legen Sie fest: SET EXACT OFF oder Heben Sie die Auswahl auf von: Genauer Zeichenvergleich im Dialogfeld Optionen (Extras > Optionen > Tabelle) Ergebnis: Der Suchwert kann sich in einem längeren Wert des durchsuchten Felds oder der Felder befinden. Um eine Übereinstimmung zu erhalten, muss der Suchwert am Beginn eines Felds erscheinen. |
Legen Sie fest: SET EXACT ON oder Wählen Sie aus: Genauer Zeichenvergleich im Dialogfeld Optionen (Extras > Optionen > Tabelle) Ergebnis: Der Suchwert muss genau mit dem Wert eines Feldes übereinstimmen, um als Übereinstimmung zu gelten. |
Weitere Informationen über SET EXACT finden Sie unter SET-Befehl.
Weitere Informationen über die Option Genauer Zeichenvergleich) finden Sie unter Registerkarte „Tabelle“ (Dialogfeld „Optionen“).