GET (Semiestruturada, Lakehouse v1)
Extrai o valor de um Variant que contém ARRAY por index, ou de um Variant que contém OBJECT por field_name.
O valor é retornado como Variant, ou NULL se qualquer um dos argumentos for NULL.
GET aplica correspondência com diferenciação de maiúsculas e minúsculas a field_name. Para correspondência sem essa diferenciação, use GET_IGNORE_CASE.
Sintaxe do Analyze
Seção intitulada “Sintaxe do Analyze”func.get(<variant>, <index>)
or
func.get(<variant>, <field_name>)Exemplos do Analyze
Seção intitulada “Exemplos do Analyze”func.get(func.parse_json('[2.71, 3.14]'), 0);┌──────────────────────────────────────────────┐│ func.get(func.parse_json('[2.71, 3.14]'), 0) │├──────────────────────────────────────────────┤│ 2.71 │└──────────────────────────────────────────────┘
func.get(func.parse_json('{"aa":1, "aA":2, "Aa":3}'), 'aa');┌─────────────────────────────────────────────────────────────┐│ func.get(func.parse_json('{"aa":1, "aA":2, "Aa":3}'), 'aa') │├─────────────────────────────────────────────────────────────┤│ 1 │└─────────────────────────────────────────────────────────────┘Sintaxe SQL
Seção intitulada “Sintaxe SQL”GET( <variant>, <index> )
GET( <variant>, <field_name> )Argumentos
Seção intitulada “Argumentos”| Argumentos | Descrição |
|---|---|
<variant> |
O valor VARIANT que contém um ARRAY ou um OBJECT |
<index> |
O valor Uint32 que especifica a posição do valor no ARRAY |
<field_name> |
O valor String que especifica a chave de um par chave-valor do OBJECT |
Tipo de retorno
Seção intitulada “Tipo de retorno”VARIANT
Exemplos de SQL
Seção intitulada “Exemplos de SQL”SELECT get(parse_json('[2.71, 3.14]'), 0);┌────────────────────────────────────┐│ get(parse_json('[2.71, 3.14]'), 0) │├────────────────────────────────────┤│ 2.71 │└────────────────────────────────────┘
SELECT get(parse_json('{"aa":1, "aA":2, "Aa":3}'), 'aa');┌───────────────────────────────────────────────────┐│ get(parse_json('{"aa":1, "aA":2, "Aa":3}'), 'aa') │├───────────────────────────────────────────────────┤│ 1 │└───────────────────────────────────────────────────┘
SELECT get(parse_json('{"aa":1, "aA":2, "Aa":3}'), 'AA');┌───────────────────────────────────────────────────┐│ get(parse_json('{"aa":1, "aA":2, "Aa":3}'), 'AA') │├───────────────────────────────────────────────────┤│ NULL │└───────────────────────────────────────────────────┘