Expande um array de structs. Cada elemento do array corresponde a uma linha, e cada elemento do struct corresponde a uma coluna em cada linha.
Sintaxe
inline(array<struct<f1:T1, f2:T2[, ...]>>)
Parâmetros
f1:T1 e f2:T2: obrigatórios. Todos os tipos de dados são compatíveis. f1 e f2 especificam variáveis membro. T1 especifica o valor de f1, e T2 especifica o valor de f2.
Valor de retorno
Retorna os dados expandidos do array de structs.
Exemplos
A tabela t_table contém o campo t_struct (STRUCT<user_id:BIGINT,user_name:STRING,married:STRING,weight:DOUBLE>). Dados da tabela:
+----------+
| t_struct |
+----------+
| {user_id:10001, user_name:LiLei, married:N, weight:63.5} |
| {user_id:10002, user_name:HanMeiMei, married:Y, weight:43.5} |
+----------+
Instrução de exemplo:
-- Expand the t_struct column.
select inline(array(t_struct)) from t_table;
-- The following result is returned:
+------------+-----------+---------+------------+
| user_id | user_name | married | weight |
+------------+-----------+---------+------------+
| 10001 | LiLei | N | 63.5 |
| 10002 | HanMeiMei | Y | 43.5 |
+------------+-----------+---------+------------+
Funções relacionadas
INLINE é uma função de tipo complexo. Para obter mais informações sobre as funções usadas para processar dados de tipos complexos, como ARRAY, MAP, STRUCT e JSON, consulte Complex type functions.