JSON_EACH (Lakehouse v1)
Extrahiert Schlüssel-Wert-Paare aus einem JSON-Objekt und zerlegt die Struktur in einzelne Zeilen der Ergebnismenge. Jede Zeile stellt ein eigenes Schlüssel-Wert-Paar dar, das aus dem JSON-Eingabeausdruck stammt.
Analyze Syntax
Abschnitt betitelt „Analyze Syntax“func.json_each(<json_string>)Analyze Examples
Abschnitt betitelt „Analyze Examples“┌────────────────────────────────────────────────────────────────────────────────────────────────────────────┐│ func.json_each(func.parse_json('{"name": "john", "age": 25, "isstudent": false, "grades": [90, 85, 92]}')) │├────────────────────────────────────────────────────────────────────────────────────────────────────────────┤│ ('age','25') ││ ('grades','[90,85,92]') ││ ('isStudent','false') ││ ('name','"John"') │└────────────────────────────────────────────────────────────────────────────────────────────────────────────┘SQL Syntax
Abschnitt betitelt „SQL Syntax“JSON_EACH(<json_string>)Return Type
Abschnitt betitelt „Return Type“JSON_EACH gibt eine Menge von Tupeln zurück, die jeweils aus einem STRING-Schlüssel und einem zugehörigen VARIANT-Wert bestehen.
SQL Examples
Abschnitt betitelt „SQL Examples“-- Extract key-value pairs from a JSON object representing information about a personSELECT JSON_EACH( PARSE_JSON ( '{"name": "John", "age": 25, "isStudent": false, "grades": [90, 85, 92]}' ) );
┌──────────────────────────────────────────────────────────────────────────────────────────────────┐│ json_each(parse_json('{"name": "john", "age": 25, "isstudent": false, "grades": [90, 85, 92]}')) │├──────────────────────────────────────────────────────────────────────────────────────────────────┤│ ('age','25') ││ ('grades','[90,85,92]') ││ ('isStudent','false') ││ ('name','"John"') │└──────────────────────────────────────────────────────────────────────────────────────────────────┘
-- Display data types of the extracted valuesSELECT TYPEOF ( JSON_EACH( PARSE_JSON ( '{"name": "John", "age": 25, "isStudent": false, "grades": [90, 85, 92]}' ) ) );
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────┐│ typeof(json_each(parse_json('{"name": "john", "age": 25, "isstudent": false, "grades": [90, 85, 92]}'))) │├──────────────────────────────────────────────────────────────────────────────────────────────────────────┤│ TUPLE(STRING, VARIANT) NULL ││ TUPLE(STRING, VARIANT) NULL ││ TUPLE(STRING, VARIANT) NULL ││ TUPLE(STRING, VARIANT) NULL │└──────────────────────────────────────────────────────────────────────────────────────────────────────────┘