Zum Inhalt springen

Liest eine Spalte mit JSON-Text und erweitert sie in Ausgabezeilen, eine pro im Dokument gefundenem Wert. Das Gegenstück zu XML parsen und das PlaidCloud-Äquivalent des Alteryx-Tools JSON Parse.

Verwenden Sie diesen Schritt, wenn ein vorgelagertes System Ihnen eine JSON-Nutzlast in einer einzelnen Spalte liefert und Sie deren Inhalt als gewöhnliche Zeilen und Spalten benötigen.

verschachteltes JSON{“id”: 1,“user”: { “name”:“Ann” },“tags”: [“a”,“b”]}parsenflache Spalteniduser.nametags1Anna, b
Table JSON Parse überführt verschachteltes JSON in Spalten: Verschachtelte Objekte werden zu Pfaden mit Punkten (user.name), und Arrays werden erweitert, sodass nachgelagerte Schritte mit einfachen Zeilen und Spalten arbeiten.

Die Spalte, die den zu parsenden JSON-Text enthält.

  • Name and value only (Standard): Jede Ausgabezeile enthält JSON_Name und JSON_ValueString. Das ist die einfachste Variante und reicht aus, wenn alles Nachgelagerte die Werte als Text behandelt.
  • Typed values: Schalten Sie die Option für ein einzelnes Feld aus, um die typspezifischen Wertspalten zusätzlich hinzuzufügen, sodass Zahlen und boolesche Werte als Zahlen und boolesche Werte statt als Zeichenfolgen ankommen.

Standardmäßig deaktiviert. Aktivieren Sie die Option, um die übrigen Spalten des Eingabedatensatzes in jeder Wertzeile zu wiederholen, sodass geparste Werte ohne separaten Join-Schritt mit dem Datensatz verknüpft bleiben, aus dem sie stammen.

Ausgabe (json_layout) wählt eine andere Ausgabeform. Jede davon behält eine Zeile pro Eingabezeile:

  • Breit: eine Spalte pro Schlüsselpfad (wide): die Eingabespalten, abzüglich des JSON-Felds, sofern es nicht einbezogen ist, plus eine Textspalte pro Schlüsselpfad mit Punkten, NULL, wenn ein Dokument ihn nicht enthält.
  • Eine Spalte pro JSONPath-Abfrage (paths): die Eingabespalten plus eine Spalte pro JSONPath-Abfrage. Listen Sie die Abfragen unter JSONPath-Abfragen (json_paths) auf, jeweils mit den Einstellungen Spalte, JSONPath, Typ und Mehrere Treffer (target, path, dtype, multi): path ist ein JSONPath (Namen, Indizes, Platzhalter, Deep Scan, Slices, Unions und Filter), dtype ist text, integer, bigint, double, boolean oder json, und multi ist leer für den ersten Treffer (NULL, wenn es keinen gibt), list für alle Treffer als Listenwert oder paths für die Pfade, die übereinstimmen. Anstelle der Liste liest Abfragen aus einer Tabelle (json_dictionary) die Abfragen aus den Zeilen einer Tabelle: {source, path, type, output} benennen die Tabelle und ihre Spalten, die jeweils Pfad, Typ und Namen der Ausgabespalte enthalten.
  • Spalten, wie KNIME JSON to Table sie erzeugt (table): die Eingabespalten plus die Spalten, die der KNIME-Knoten JSON to Table aus den Dokumenten erzeugt. Die Optionen unter JSON in Tabelle (json_table) steuern dies, beginnend mit Spalten nach ihrem JSON-Pfad benennen (paths), Pfadtrennzeichen (separator, Standard .) zum Verbinden der Pfadsegmente, Arrays (arrays) als GenerateCollectionCells, GenerateColumns oder KeepAllArrayAsJsonArray, Zu erweiternde Ebenen (levels, 0 für alle) und Erweiterte Objekte weglassen (omit_objects, Standard true), um Objektwerte wegzulassen.

Aktivieren Sie beim Layout JSONPath oder JSON in Tabelle Das JSON-Feld in der Ausgabe weglassen (json_remove_source), um das JSON-Feld aus dem Ergebnis zu entfernen.