FUZZYJOIN-Befehl

Verwenden Sie die Fuzzy-Übereinstimmung, um Felder aus zwei Analytics-Tabellen in einer neuen einzelnen Analytics-Tabelle zu vereinen.

Hinweis

Um nahezu identische Werte (Fuzzy-Duplikate) in einem einzelnen Zeichenfeld zu erkennen, lesen Sie FUZZYDUP-Befehl.

Zahlreiche Optionen für die Zusammenführung von Tabellen mit exakt übereinstimmenden Schlüsselfeldwerten finden Sie in JOIN-Befehl.

Syntax

FUZZYJOIN {DICE PERCENT Prozentsatz NGRAM N-Gramm-Länge|LEVDISTANCE DISTANCE Wert} PKEY primäres_Schlüsselfeld SKEY sekundäres_Schlüsselfeld {FIELDS Primärfelder|FIELDS ALL} <WITH Sekundärfelder|WITH ALL> <IF Test> <OPEN> <FIRSTMATCH> TO Tabellenname <WHILE Test> <FIRST Bereich|NEXT Bereich> <APPEND>

Hinweis

Sie können den Befehl FUZZYJOIN nicht lokal für eine Servertabelle ausführen.

Sie müssen den Befehlsnamen FUZZYJOIN vollständig ausschreiben. Eine Abkürzung ist nicht möglich.

Parameter

Name Beschreibung
DICE PERCENT Prozentsatz NGRAM N-Gramm-Länge | LEVDISTANCE DISTANCE Wert

Der zu verwendende Algorithmus für die Fuzzy-Übereinstimmung.

DICE Den Algorithmus „Dice-Koeffizient“ verwenden

  • PERCENT Prozentsatz Der zulässige Mindestwert des Dice-Koeffizienten zweier Zeichenfolgen, sodass diese als Fuzzy-Übereinstimmung gelten

    Geben Sie einen Dezimalbruch von 0,0000 bis 1,0000 ein (z.B. „0,7500“). Verwenden Sie bis zu vier Dezimalstellen.

    Bei einer Verringerung des Werts erhöht sich die Anzahl an Übereinstimmungen, da Zeichenfolgen mit einem stärkeren Fuzzy-Grad, also einer größeren Abweichung voneinander, einbezogen werden.

  • NGRAM N-Gramm-Länge Die zu verwendende N-Gramm-Länge

    Geben Sie eine ganze Zahl ab 1 an.

    Wenn die N-Gramm-Länge angehoben wird, wird die Ähnlichkeit der beiden Zeichenfolgen strikter bewertet.

    N-Gramme sind sich überlappende Teilzeichenfolgen (Zeichenblöcke), in die Vergleichszeichenfolgen im Rahmen der Berechnung des Dice-Koeffizienten aufgeteilt werden.

    Hinweis

    Wenn Sie DICE angeben, verwendet der FUZZYJOIN-Befehl die DICECOEFFICIENT( )-Funktion in einer IF-Anweisung, um Schlüsselfeldwerte bedingt zusammenzuführen. Genauere Informationen über die Funktion finden Sie unter Funktion DICECOEFFICIENT( ).

LEVDISTANCE Den Algorithmus „Levenshtein-Distanz“ verwenden

  • DISTANCE Wert Der zulässige Maximalwert der Levenshtein-Distanz zweier Zeichenfolgen, sodass diese als Fuzzy-Übereinstimmung gelten

    Geben Sie eine ganze Zahl ab 1 an.

    Bei einer Steigerung des Werts erhöht sich die Anzahl an Übereinstimmungen, da Zeichenfolgen mit einem stärkeren Fuzzy-Grad, also einer größeren Abweichung voneinander, einbezogen werden.

    Hinweis

    Wenn Sie LEVDISTANCE angeben, verwendet der FUZZYJOIN-Befehl die LEVDIST( )-Funktion in einer IF-Anweisung, um Schlüsselfeldwerte bedingt zusammenzuführen. Genauere Informationen über die Funktion finden Sie unter LEVDIST( )-Funktion.

    Im Gegensatz zur Funktion schneidet der Algorithmus der Levenshtein-Distanz im Befehl FUZZYJOIN führende und nachgestellte leere Werte ab und beachtet keine Groß-/Kleinschreibung.

PKEY Primärschlüsselfelder

Das Zeichenschlüsselfeld oder der Ausdruck in der Primärtabelle.

Sie können nur ein Primärschlüsselfeld festlegen.

SKEY Sekundärschlüsselfeld

Das Zeichenschlüsselfeld oder der Ausdruck in der Sekundärtabelle.

Sie können nur ein Sekundärschlüsselfeld festlegen.

FIELDS Primärfelder | FIELDS ALL

Die in die zusammengeführte Ausgabedatei einzuschließenden Felder oder Ausdrücke aus der Primärtabelle.

  • Primärfelder Das angegebene Feld oder die angegebenen Felder einschließen
  • ALL Alle Felder aus der-Tabelle einschließen

Hinweis

Sie müssen das Primärschlüsselfeld explizit festlegen, wenn es in der zusammengeführten Tabelle enthalten sein soll. Wenn Sie ALL angeben, wird es auch eingeschlossen.

WITH Sekundärfelder | WITH ALL

Optional

Die in die zusammengeführte Ausgabedatei einzuschließenden Felder oder Ausdrücke aus der Sekundärtabelle.

  • Sekundärfelder Das angegebene Feld oder die angegebenen Felder einschließen
  • ALL Alle Felder aus der-Tabelle einschließen

Hinweis

Sie müssen das Sekundärschlüsselfeld explizit festlegen, wenn es in der zusammengeführten Tabelle enthalten sein soll. Wenn Sie ALL angeben, wird es auch eingeschlossen.

IF Test

Optional

Ein bedingter Ausdruck, der wahr sein muss, damit ein Datensatz verarbeitet wird. Der Befehl wird nur für Datensätze ausgeführt, welche die Bedingung erfüllen.

Hinweis

Der IF-Parameter wird nur für Datensätze ausgewertet, die nach Anwendung von Bereichsparametern (WHILE, FIRST, NEXT) in einer Tabelle übrig sind.

Hinweis

Die IF-Bedingung kann die Primärtabelle, die Sekundärtabelle oder beide referenzieren.

OPEN

Optional

Öffnet die durch den Befehl erstellte Tabelle, nachdem der Befehl ausgeführt wird. Nur gültig, wenn der Befehl eine Ausgabetabelle erstellt.

FIRSTMATCH

Optional

Gibt an, dass jeder Primärschlüsselwert mit lediglich dem ersten Vorkommen eines Sekundärschlüsselwerts zusammengeführt wird.

Falls das erste Vorkommen eine genaue Übereinstimmung ist, werden alle folgenden Fuzzy-Übereinstimmungen für den Primärschlüsselwert nicht in die zusammengeführte Ausgabetabelle aufgenommen.

Wenn Sie FIRSTMATCH nicht angeben, besteht das Standardverhalten von FUZZYJOIN darin, jeden Primärschlüsselwert mit allen Vorkommen von übereinstimmenden Sekundärschlüsseln zusammenzuführen.

FIRSTMATCH ist hilfreich, wenn Sie nur wissen möchten, ob es in den beiden Tabellen überhaupt Übereinstimmungen (ob genaue oder Fuzzy-Übereinstimmungen) gibt, und Sie die Verarbeitungszeit zur Erkennung aller Übereinstimmungen senken möchten.

Sie können FIRSTMATCH auch verwenden, wenn Sie sicher sind, dass es höchstens eine Übereinstimmung in der Sekundärtabelle für jeden Primärschlüsselwert gibt.

Hinweis

FIRSTMATCH ist nur als ein ACLScript-Parameter verfügbar. In der Analytics-Benutzeroberfläche ist die Option nicht verfügbar.

TO Tabellenname

Der Ort, an den die Ergebnisse des Befehls gesendet werden sollen:

  • Tabellenname Speichert die Ergebnisse in einer Analytics-Tabelle.

    Geben Sie Tabellenname als in Anführungszeichen gesetzte Zeichenfolge mit der Dateierweiterung „.FIL“ an. Beispiel: TO "Ausgabe.FIL"

    Standardmäßig wird die Tabellendatendatei (.FIL) im Ordner mit dem Analytics-Projekt gespeichert.

    Verwenden Sie entweder einen absoluten oder relativen Dateipfad, um die Datendatei in einen anderen bestehenden Ordner zu speichern:

    • TO "C:\Ausgabe.FIL"
    • TO "Ergebnisse\Ausgabe.FIL"

    Hinweis

    Tabellennamen sind auf 64 alphanumerische Zeichen beschränkt, was die .FIL-Dateierweiterung nicht einbezieht. Der Name kann den Unterstrich beinhalten ( _ ), aber keine anderen Sonderzeichen oder Leerzeichen. Er kann nicht mit einer Ziffer beginnen.

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:

  • FIRST Verarbeitung beim ersten Datensatz beginnen, bis die angegebene Datensatzanzahl erreicht wird
  • NEXT Verarbeitung beim aktuell ausgewählten Datensatz beginnen, bis die angegebene Datensatzanzahl erreicht wird

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.

APPEND

Optional

Hängt die Befehlsausgabe an das Ende einer vorhandenen Datei an, statt die Datei zu überschreiben.

Hinweis

Vergewissern Sie sich, dass die Struktur der Befehlsausgabe und der bestehenden Datei identisch sind:

  • dieselben Felder
  • dieselbe Feldanordnung
  • abzugleichende Felder mit derselben Länge
  • abzugleichende Felder mit demselben Datentyp

Analytics hängt eine Ausgabe an eine bestehende Datei beliebiger Struktur an. Falls die Struktur der Ausgabe und der bestehenden Datei nicht übereinstimmen, kann die Datenintegrität verletzt sein, es können Daten fehlen oder falsch sein.

ISOLOCALE Gebietsschema_Code

Optional

Hinweis

Gilt nur für die Unicode-Edition von Analytics.

Das Systemgebietsschema im Format Sprache_Land. Für kanadisches Französisch geben Sie beispielsweise fr_ca ein.

Verwenden Sie die folgenden Codes:

  • Sprache Sprachcode nach dem Standard ISO 639
  • Land Ländercode nach dem Standard ISO 3166

    Wenn Sie keinen Ländercode angeben, verwendet ACL das Standardland für die verwendete Sprache.

Wenn Sie ISOLOCALE verwenden, wird das Standard-Systemgebietsschema nicht verwendet.

Beispiele

Fuzzy-Übereinstimmung zur Zusammenführung von zwei Tabellen verwenden, um Mitarbeiter zu finden, die auch Lieferanten sein könnten

Im folgenden Beispiel werden die Tabellen „Mitarbeiterstamm“ und „Lieferant“ mit Hilfe des gemeinsamen Schlüsselfelds der Anschrift (Felder „Adresse“ und „Lieferantenstraße“) zusammengeführt.

Der FUZZYJOIN-Befehl erstellt eine neue Tabelle, die entweder aus genauen oder Fuzzy-Übereinstimmungen von Primär- und Sekundärdatensätzen besteht. Das Ergebnis ist eine Liste der Mitarbeiter und Lieferanten, die entweder identische oder ähnliche Adressen haben.

FUZZYJOIN mit dem Algorithmus „Dice-Koeffizient“

OPEN Mitarbeiterstamm PRIMARY
OPEN Lieferant SECONDARY
FUZZYJOIN DICE PERCENT 0,8000 NGRAM 2 PKEY Adresse SKEY Lieferantenstraße FIELDS Mitarbeiternummer Vorname Nachname Adresse WITH Lieferantennummer Lieferantenname Lieferantenstraße OPEN TO "Mitarbeiter_Lieferanten_Übereinstimmungen"

FUZZYJOIN mit dem Algorithmus „Levenshtein-Distanz“

OPEN Mitarbeiterstamm PRIMARY
OPEN Lieferant SECONDARY
FUZZYJOIN LEVDISTANCE DISTANCE 5 PKEY Adresse SKEY Lieferantenstraße FIELDS Mitarbeiternummer Vorname Nachname Adresse WITH Lieferantennummer Lieferantenname Lieferantenstraße OPEN TO "Mitarbeiter_Lieferanten_Übereinstimmungen"

Alle Felder einschließen

Diese Version des FUZZYJOIN-Befehls schließt alle Felder der Primär- und Sekundärtabellen in die zusammengeführte Ausgabetabelle ein.

OPEN Mitarbeiterstamm PRIMARY
OPEN Lieferant SECONDARY
FUZZYJOIN LEVDISTANCE DISTANCE 5 PKEY Adresse SKEY Lieferantenstraße FIELDS ALL WITH ALL OPEN TO "Mitarbeiter_Lieferanten_Übereinstimmungen"

Bemerkungen

Hinweis

Weitere Informationen über die Funktion dieses Befehls finden Sie in Hilfe für Analytics.

Beachtung der Groß- und Kleinschreibung

Der FUZZYJOIN-Befehl unterscheidet nicht zwischen Groß- und Kleinschreibung. Dabei spielt es keine Rolle, welchen Fuzzy-Übereinstimmungs-Algorithmus Sie verwenden. „SMITH“ entspricht also „smith“.

Führende und nachgestellte Leerzeichen

Der FUZZYJOIN-Befehl schneidet führende und nachgestellte Leerzeichen in Feldern automatisch ab. Dabei spielt es keine Rolle, welchen Fuzzy-Übereinstimmungs-Algorithmus Sie verwenden. Die TRIM( )- oder ALLTRIM( )-Funktionen müssen also nicht verwendet werden, wenn die Primär- und Sekundärschlüsselfelder angegeben werden.