Expande el ARRAY de STRUCT especificado. Cada elemento del ARRAY corresponde a una fila, y cada elemento del STRUCT de cada fila corresponde a una columna.
Formato del comando
inline(array<struct<f1:T1, f2:T2[, ...]>>)
Descripción de parámetros
f1:T1、f2:T2:obligatorios. Pueden ser de cualquier tipo. f1、f2 representan las variables miembro, T1、T2 representan respectivamente los valores de las variables miembro f1、f2.
Descripción del valor de retorno
Devuelve los datos resultantes de expandir el ARRAY de STRUCT.
Ejemplo de uso
Por ejemplo, la tabla t_table tiene el campo t_struct struct<user_id:bigint,user_name:string,married:string,weight:double> y contiene los siguientes datos:
+----------+
| t_struct |
+----------+
| {user_id:10001, user_name:LiLei, married:N, weight:63.5} |
| {user_id:10002, user_name:HanMeiMei, married:Y, weight:43.5} |
+----------+
El comando de ejemplo es el siguiente.
--将t_struct列展开。
select inline(array(t_struct)) from t_table;
--返回结果如下。
+------------+-----------+---------+------------+
| user_id | user_name | married | weight |
+------------+-----------+---------+------------+
| 10001 | LiLei | N | 63.5 |
| 10002 | HanMeiMei | Y | 43.5 |
+------------+-----------+---------+------------+
Funciones relacionadas
La función INLINE pertenece a la categoría de funciones de tipos complejos. Para ver más funciones que procesan datos de tipos complejos (por ejemplo, ARRAY, MAP, STRUCT y JSON), consulte Complex type functions.