Ersten übereinstimmenden Datensatz auswählen

Konzept-Informationen

FIND-Befehl

LOCATE-Befehl

SEEK-Befehl

Sie können einen Analytics-Befehl verwenden, um den ersten Datensatz einer Tabelle auszuwählen, der den Suchkriterien entspricht. Der Datensatz ist dann ausgewählt, jedoch nicht wie bei anderen Suchtypen in Analytics isoliert. Die restlichen Datensätze sind in der Tabellenansicht noch immer vorhanden.

Verwendung in Skripts

Die Möglichkeit, den ersten übereinstimmenden Datensatz auszuwählen, ist besonders in Analytics-Skripts hilfreich. Zusammen mit anderen Skripttechniken können die folgenden Befehle beispielsweise verwendet werden, um Datensätze in einer Tabelle sequenziell zu durchlaufen, um anschließend eine wiederholte Aktion auf Basis der Inhalte jedes ausgewählten Datensatzes durchzuführen.

Dialogfeld „Suchen“

In der Analytics-Benutzeroberfläche greifen Sie auf die Befehle im Dialogfeld Suchen zu (Daten > Suchen).

Die folgende Tabelle beschreibt die unterschiedlichen Optionen des Dialogfelds Suchen. Sie enthält auch die entsprechenden ACLScript-Befehle unter der Annahme, dass die Optionen vor allem in Analytics-Skripts hilfreich sind.

Anmerkung

Sie können unten auf beliebige Befehlsnamen klicken, um detaillierte Informationen zu dem jeweiligen Befehl zu erhalten.

Option Dialogfeld „Suchen“

Äquivalenter Analytics-Befehl

Beschreibung

Datensatz suchen

LOCATE RECORD

Wählt eine bestimmte Datensatznummer in einer Tabelle.

Suchen falls

LOCATE

Wählt das erste Auftreten eines Literals beliebigen Typs oder eines Ausdrucks, der einen beliebigen Datentyp oder eine Mischung von Datentypen verwendet. Die Tabelle muss hierzu nicht indiziert werden.

Beispiel:

  • Lieferantenstadt = "New York"
  • Rechnungsbetrag = 296,50
  • Rechnungsdatum = `20141231`
  • Lieferantenstadt = v_Stadt
  • Lieferantenstadt = v_Stadt AND Rechnungsbetrag > 1000

Literalsuche

FIND

Wählt das erste Vorkommen eines Zeichenliterals (beispielsweise „New York“) in einem Zeichenfeld, das in aufsteigender Reihenfolge indiziert wurde.

Anmerkung

Der FIND-Befehl und die FIND( )-Funktion sind zwei eigenständige Analytics-Features mit beträchtlichen Unterschieden.

Ausdruck suchen

SEEK

Wählt das erste Vorkommen eines Zeichenliterals (beispielsweise „New York“) oder eines Zeichenausdrucks (beispielsweise v_Stadt) in einem Zeichenfeld, das in aufsteigender Reihenfolge indiziert wurde.

Index-Anforderung

Um die Optionen Literalsuche oder Ausdruck suchen verwenden zu können, müssen Sie zuerst das zu durchsuchende Zeichenfeld in aufsteigender Reihenfolge indizieren. Beide Optionen durchsuchen lediglich das indizierte Feld.

Wenn in einer Tabelle mehr als ein Feld indiziert ist (ein verschachtelter Index), wird nur das primäre Schlüsselfeld durchsucht, sofern es sich um ein Zeichenfeld handelt, das aufsteigend indiziert wurde. Bei einem bedingten Index werden Datensätze, die aus der Ansicht ausgeschlossen sind, auch nicht durchsucht.

Richtlinien

Funktionsbereich Richtlinien
Datentyp

Alle Optionen können mit Zeichenfeldern verwendet werden. Für Datumzeit-Felder oder numerische Felder kann nur die Option Suchen falls genutzt werden.

Teilweise Übereinstimmung

Teilweise Übereinstimmungen werden beim Durchsuchen von Zeichenfeldern unterstützt, der Suchbegriff muss jedoch am Feldbeginn erscheinen.

Durch Lieferantenname = "Uni" wird beispielsweise „United Equipment“ gefunden, nicht aber durch Lieferantenname = "Equip".

Beachtung der Groß- und Kleinschreibung Wenn Zeichenfelder durchsucht werden, unterscheiden alle Optionen zwischen Groß- und Kleinschreibung.
Leistung Die Option Suchen falls durchsucht eine Tabelle sequenziell und ist daher langsamer als die Optionen Literalsuche oder Ausdruck suchen, die indizierte Tabellen durchsuchen. Dafür benötigt die Option Suchen falls keine zusätzliche Zeit zur Indizierung einer Tabelle.
Anordnung der Datensätze Die Option Suchen falls behält die ursprüngliche Anordnung der Datensätze in einer Tabelle bei, was je nach der Art Ihrer Analyse wünschenswert sein kann.

Bestimmte Datensatznummern einer Tabelle wählen

  1. Wählen Sie aus dem Analytics-Hauptmenü Daten > Suchen > Datensatz suchen.
  2. Geben Sie die Datensatznummer in das Textfeld Ausdruck ein, und klicken Sie auf OK.

    Wenn die Datensatznummer gefunden wurde, wird der Datensatz ausgewählt, und es erfolgt eine Positionierung in der Tabelle auf dem entsprechenden Datensatz.

Erstes Auftreten eines Literals oder Ausdrucks beliebigen Typs wählen

  1. Wählen Sie aus dem Analytics-Hauptmenü Daten > Suchen > Suchen falls.
  2. Führen Sie einen der folgenden Schritte aus:
    • Geben Sie einen Ausdruck in das Textfeld Ausdruck ein, und klicken Sie auf OK.
    • Klicken Sie auf Ausdruck, um den Ausdruck-Generator zu öffnen. Erstellen Sie einen Ausdruck, klicken Sie auf OK und dann noch einmal auf OK.

    Der Ausdruck kann so einfach oder so komplex wie notwendig sein, ein Feld oder mehrere Felder umfassen und Datentypen mischen. Beispiel:

    • Lieferantenname = "United Equipment"

    • Rechnungsbetrag > 1000

    • Lieferantenname = "United Equipment" AND Rechnungsbetrag > 1000 AND Rechnungsdatum > `20140930`

    Sie müssen Zeichenliterale in Anführungszeichen setzen und Datumzeit-Werte in Backquotes.

    Wenn der angegebene Wert gefunden wurde, erfolgt die Positionierung in der Tabelle auf dem entsprechenden Datensatz.

    Wenn der angegebene Wert nicht gefunden wurde, erfolgt eine Positionierung auf dem ersten Datensatz der Tabelle.

Erstes Vorkommen eines Zeichenliterals in indizierter Tabelle wählen

  1. Aktivieren Sie einen Index für die Tabelle, die Sie durchsuchen möchten.

    Die Tabelle muss nach dem Zeichenfeld indiziert werden, das Sie durchsuchen möchten.

  2. Wählen Sie aus dem Analytics-Hauptmenü Daten > Suchen > Literalsuche.
  3. Geben Sie ein Zeichenliteral in das Textfeld Ausdruck ein, und klicken Sie auf OK.

    Setzen Sie das Zeichenliteral nicht in Anführungszeichen, es sei denn, die Anführungszeichen sind ein Bestandteil der Daten innerhalb des Felds. Beispiel:

    • United Equipment

    • R (um den ersten Wert zu finden, der mit einem „R“ beginnt)

    Wenn der angegebene Wert gefunden wurde, erfolgt die Positionierung in der Tabelle auf dem entsprechenden Datensatz.

    Wenn der angegebene Wert nicht gefunden wurde, wird die Meldung „Kein Indexeintrag“ angezeigt. Die Positionierung in der Tabelle erfolgt auf dem ersten Datensatz, dessen Schlüsselfeld einen größeren Wert als den festgelegten Wert aufweist, oder auf dem ersten Datensatz, falls kein Wert innerhalb der Tabelle größer als der angegebene Wert ist.

Erstes Vorkommen eines Zeichenliterals oder Ausdrucks in indizierter Tabelle wählen

  1. Aktivieren Sie einen Index für die Tabelle, die Sie durchsuchen möchten.

    Die Tabelle muss nach dem Zeichenfeld indiziert werden, das Sie durchsuchen möchten.

  2. Wählen Sie aus dem Analytics-Hauptmenü Daten > Suchen > Ausdruck suchen.
  3. Führen Sie einen der folgenden Schritte aus:
    • Geben Sie einen Ausdruck mit Zeichentyp oder ein Zeichenliteral in das Textfeld Ausdruck ein, und klicken Sie auf OK.
    • Klicken Sie auf Ausdruck, um den Ausdruck-Generator zu öffnen. Erstellen Sie einen Ausdruck, klicken Sie auf OK und dann noch einmal auf OK.

    Beispiel:

    • v_Lieferantenname

    • "United Equipment"

    Zeichenliterale müssen in Anführungszeichen gesetzt werden.

    Wenn der angegebene Wert gefunden wurde, erfolgt die Positionierung in der Tabelle auf dem entsprechenden Datensatz.

    Wenn der angegebene Wert nicht gefunden wurde, wird die Meldung „Kein Indexeintrag“ angezeigt. Die Positionierung in der Tabelle erfolgt auf dem ersten Datensatz, dessen Schlüsselfeld einen größeren Wert als den festgelegten Wert aufweist, oder auf dem ersten Datensatz, falls kein Wert innerhalb der Tabelle größer als der angegebene Wert ist.

Ein Vergleich von Analytics-Suchbefehlen

Die folgende Tabelle beinhaltet einen allgemeinen Vergleich von Analytics-Suchbefehlen. Wenn Sie Befehle in einem Analytics-Skript verwenden, kann es hilfreich sein, wenn Sie wissen, wie sich die spezifischen Regeln der einzelnen Befehle unterscheiden.

Funktionsbereich Datensatz suchen / Suchen falls Literalsuche Ausdruck suchen
Durchsuchbare Datentypen
  • Zeichen
  • Datumzeit
  • Numerisch

(Sie können auch nach Datensatznummer suchen)

Zeichen
Sucht in
  • Feld
  • Felder
Feld
Sucht in verbundenen Feldern

Ja

(es muss vollqualifzierter Feldname angegeben werden)

Ja
Index notwendig Nein

Ja

(aufsteigende Anordnung notwendig)

Führende Leerzeichen können gesucht werden

Ja

(Leerzeichen in Daten oder Suchbegriff werden wie Zeichen behandelt)

Nein

Ja

(Leerzeichen in Daten oder Suchbegriff werden wie Zeichen behandelt)

Unterscheidung von Groß- und Kleinschreibung Ja
Teilweise Übereinstimmung

Ja

(Suchbegriff muss am Anfang des Felds erscheinen, nur für Zeichen)

Ja

(Suchbegriff muss am Anfang des Felds erscheinen)

Anführungszeichen rund um Suchbegriff notwendig
  • Ja (für Zeichen)
  • Nein (für Numerisch)
  • Optional (für Datensatznummer)
  • Backquotes (für Datumzeit)
Nein (Suchbegriff darf nicht durch Anführungszeichen umschlossen sein, es sei denn, die Anführungszeichen sind ein Datenbestandteil) Ja
Durch Option „Genauer Zeichenvergleich“ beeinflusst

(SET EXACT ON/OFF)

Ja Nein
Ausdrücke unterstützt Ja Nein Ja
Zusätzliche Anmerkungen Die Operationen Datensatz suchen und Suchen falls im Dialogfeld Suchen sowie der Befehl LOCATE RECORD/LOCATE sind identisch. Die Operation Literalsuche im Dialogfeld Suchen und der Befehl FIND sind identisch. Die Operation Ausdruck suchen im Dialogfeld Suchen und der Befehl SEEK sind identisch.