GET_PATH (Lakehouse v1)
Extrahiert anhand von path_name einen Wert aus einer VARIANT.
Der Wert wird als Variant zurückgegeben, oder als NULL, wenn eines der Argumente NULL ist.
GET_PATH entspricht einer Kette von GET-Funktionen. path_name besteht aus aneinandergereihten Feldnamen, denen jeweils ein Punkt (.), ein Doppelpunkt (:) oder ein Indexoperator ([index]) vorangestellt ist. Beim ersten Feldnamen muss das führende Zeichen nicht angegeben werden.
Analyze Syntax
Abschnitt betitelt „Analyze Syntax“func.get_path(<variant>, <path_name>)Analyze Examples
Abschnitt betitelt „Analyze Examples“func.get_path(func.parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k4')┌─────────────────────────────────────────────────────────────────────────────────┐│ func.get_path(func.parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k4') │├─────────────────────────────────────────────────────────────────────────────────┤│ 4 │└─────────────────────────────────────────────────────────────────────────────────┘SQL Syntax
Abschnitt betitelt „SQL Syntax“GET_PATH( <variant>, <path_name> )Arguments
Abschnitt betitelt „Arguments“| Argumente | Beschreibung |
|---|---|
<variant> |
Der VARIANT-Wert, der entweder ein ARRAY oder ein OBJECT enthält |
<path_name> |
Der Zeichenfolgenwert, der aus aneinandergereihten Feldnamen besteht |
Return Type
Abschnitt betitelt „Return Type“VARIANT
SQL Examples
Abschnitt betitelt „SQL Examples“SELECT get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k1[0]');┌───────────────────────────────────────────────────────────────────────┐│ get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k1[0]') │├───────────────────────────────────────────────────────────────────────┤│ 0 │└───────────────────────────────────────────────────────────────────────┘
SELECT get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2:k3');┌───────────────────────────────────────────────────────────────────────┐│ get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2:k3') │├───────────────────────────────────────────────────────────────────────┤│ 3 │└───────────────────────────────────────────────────────────────────────┘
SELECT get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k4');┌───────────────────────────────────────────────────────────────────────┐│ get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k4') │├───────────────────────────────────────────────────────────────────────┤│ 4 │└───────────────────────────────────────────────────────────────────────┘
SELECT get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k5');┌───────────────────────────────────────────────────────────────────────┐│ get_path(parse_json('{"k1":[0,1,2], "k2":{"k3":3,"k4":4}}'), 'k2.k5') │├───────────────────────────────────────────────────────────────────────┤│ NULL │└───────────────────────────────────────────────────────────────────────┘