One-Tool-Beispiel
Für das JSON-Parse-Tool gibt es ein One-Tool-Beispiel. Unter Beispiel-Workflows erfahren Sie, wie Sie dieses und viele weitere Beispiele direkt in Alteryx Designer aufrufen können.
Verwenden Sie das JSON-Parse-Tool, um JSON-Text (JavaScript Object Notation) für die nachfolgende Verarbeitung in ein Tabellenschema zu trennen. Sie können die Ausgabe in das JSON Build-Tool einspeisen, um wieder ein verwendbares JSON-Format daraus zu erstellen.
JSON-Feld: Wählen Sie die Felder aus, die JSON-Text enthalten. Das Feld muss ein gültiges JSON-Objekt mit dem gesamten Text für einen Datensatz in einer einzelnen Zelle enthalten. Siehe dieses Beispiel:
{ "firstName": "John", "lastName": "Smith", "age": 25, "address": { "streetAddress": "21 2nd Street", "city": "New York", "state": "NY", "postalCode": "10021" }, "phoneNumber": [ { "type": "home", "number": "212 555-1234" }, { "type": "fax", "number": "646 555-4567" } ] }
Eingabe in Ausgabe: Die ausgewählte Spalte ist im vom Tool ausgehenden Datenstrom enthalten.
Wählen Sie aus, wie das JSON-Objekt analysiert wird. Zu den Optionen gehören:
Werte in einzelnem Zeichenfolgenfeld ausgeben
Werte in Datentyp-spezifischen Feldern ausgeben
Verschachtelung des JSON-Felds aufheben: Diese Option ist nur über AMP verfügbar.
Array vereinfachen: Diese Option ist nur über AMP verfügbar.
Weitere Informationen und Beispiele für die oben genannten Optionen finden Sie in den nachfolgenden Abschnitten.
Diese Option gibt 2 Felder aus: JSON_Name
und JSON_ValueString
. Beim oben angeführten Eingabebeispiel gibt das Tool diese Daten aus:
{
"firstName": "John",
"lastName": "Smith",
"age": 25,
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": "10021"
},
"phoneNumber": [
{
"type": "home",
"number": "212 555-1234"
},
{
"type": "fax",
"number": "646 555-4567"
}
]
}
JSON_Name | JSON_ValueString |
---|---|
firstName | John |
lastName | Smith |
age | 25 |
address.streetAddress | 21 2nd Street |
address.city | New York |
address.state | NY |
address.postalCode | 10021 |
phoneNumber.0.type | home |
phoneNumber.0.number | 212-555-1234 |
phoneNumber.1.type | fax |
phoneNumber.1.number | 646-555-4567 |
Diese Option gibt die folgenden 5 Felder aus:
Feldname | Beschreibung |
---|---|
| „JSON_Name“ ist der „Schlüssel“ eines JSON-Objekts (Schlüssel:Wert-Paar). Der Schlüssel und die hierarchischen Kategorien werden durch einen Punkt voneinander getrennt. |
| Der entsprechende „Wert“ für die Zeichenfolge des JSON-Objekts (Schlüssel:Wert-Paar). Wenn der Wert keine Zeichenfolge ist, wird er als [Null] angezeigt. |
| Der entsprechende ganzzahlige „Wert“ des JSON-Objekts (Schlüssel:Wert-Paar). Wenn der Wert keine ganze Zahl ist, wird er als [Null] angezeigt. |
| Der entsprechende „Gleitkommawert“ des JSON-Objekts (Schlüssel:Wert-Paar). Wenn der Wert kein Gleitkommawert ist, wird er als [Null] angezeigt. |
| Der entsprechende boolesche „Wert“ des JSON-Objekts (Schlüssel:Wert-Paar). Wenn der Wert kein boolescher Wert ist, wird er als [Null] angezeigt. |
{
"firstName": "John",
"lastName": "Smith",
"age": 25,
"address": {
"streetAddress": "21 2nd Street",
"city": "New York",
"state": "NY",
"postalCode": "10021"
},
"phoneNumber": [
{
"type": "home",
"number": "212 555-1234"
},
{
"type": "fax",
"number": "646 555-4567"
}
]
}
JSON_Name | JSON_ValueString | JSON_ValueInt | JSON_ValueFloat | JSON_ValueBool |
---|---|---|---|---|
firstName | John | [Null] | [Null] | [Null] |
lastName | Smith | [Null] | [Null] | [Null] |
age | [Null] | 25 | [Null] | [Null] |
address.streetAddress | 21 2nd Street | [Null] | [Null] | [Null] |
address.city | New York | [Null] | [Null] | [Null] |
address.state | NY | [Null] | [Null] | [Null] |
address.postalCode | 10021 | [Null] | [Null] | [Null] |
phoneNumber.0.type | home | [Null] | [Null] | [Null] |
phoneNumber.0.number | 212-555-1234 | [Null] | [Null] | [Null] |
phoneNumber.1.type | fax | [Null] | [Null] | [Null] |
phoneNumber.1.number | 646-555-4567 | [Null] | [Null] | [Null] |
Mit dieser Option können Sie die Verschachtelung von JSON-Objekten in Form von Spalten aufheben. Es wird nur in eine Ebene tiefer im JSON-Objekt aufgeschlüsselt.
Warnung
„Verschachtelung des JSON-Felds aufheben“ ist nur über AMP verfügbar.
Verwenden Sie eine Spalte „Stunden“ in der Eingabe mit folgenden Werten:
{
"Tuesday": {"close": "17:00", "open": "08:00"},
"Friday": {"close": "17:00", "open": "08:00"},
"Monday": {"close": "17:00", "open": "08:00"},
"Wednesday": {"close": "17:00", "open": "08:00"},
"Thursday": {"close": "17:00", "open": "08:00"}
}
Wenn die Verschachtelung der obigen Spalte „Stunden“ aufgehoben wird, wird Folgendes ausgegeben:
hours.Tuesday | hours.Friday | hours.Monday | hours.Wednesday | hours.Thursday |
---|---|---|---|---|
{"close":"17:00","open":"08:00"} | {"close":"17:00","open":"08:00"} | {"close":"17:00","open":"08:00"} | {"close":"17:00","open":"08:00"} | {"close":"17:00","open":"08:00"} |
Wenn Sie die Verschachtelung in der Spalte „Stunden“ aufheben, werden die Spalten „hours.Tuesday“, „hours.Friday“, „hours.Monday“ usw. ausgegeben.
„hours.Tuesday“ beinhaltet weiterhin folgendes Objekt: {"close": "17:00", "open": "08:00"}. Mit einem weiteren JSON-Parse-Tool können Sie dafür die Verschachtelung wieder auf „hours.Tuesday.close“ und „hours.Tuesday.open“ aufheben.
Diese Option kann nur für Spalten mit Arraywerten angewendet werden. Damit lässt sich eine JSON-Arrayspalte durch Entfernen der eckigen Klammern erweitern. Die Option erstellt eine separate Zeile für jedes Element, jeweils getrennt durch ein Komma, und weist jeder Zeile eine ID zu.
Warnung
„Array vereinfachen“ ist nur über AMP verfügbar.
Verwenden Sie diese Arrayeingabe in eckigen Klammern, wobei der Spaltenname „hours“ und der Spaltenwert ein Array ist:
[
{"day": "Monday", "open": "08:00", "close": "17:00"},
{"day": "Tuesday", "open": "08:00", "close": "17:00"},
{"day": "Wednesday", "open": "08:00", "close": "17:00"},
{"day": "Thursday", "open": "08:00", "close": "17:00"},
{"day": "Friday", "open": "08:00", "close": "17:00"}
]
hours_flatten | hours_idx |
---|---|
{"day":"Monday","open":"08:00","close":"17:00"} | 1 |
{"day":"Tuesday","open":"08:00","close":"17:00"} | 2 |
{"day":"Wednesday","open":"08:00","close":"17:00"} | 3 |
{"day":"Thursday","open":"08:00","close":"17:00"} | 4 |
{"day":"Friday","open":"08:00","close":"17:00"} | 5 |