Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
Databricks SQL
Databricks Runtime
Expande una matriz de estructuras en una tabla.
En Databricks SQL y Databricks Runtime 16.1 y versiones posteriores, esta función permite la invocación de parámetros con nombre .
Sintaxis
inline(input)
Argumentos
-
input: una expresiónARRAY<STRUCT>.
Devoluciones
Conjunto de filas compuestas por los campos de los elementos de estructura de la matriz input.
Las columnas generadas por inline son los nombres de los campos.
Si input es NULL, no se generará ninguna fila.
Se aplica a:
Databricks Runtime 12.1 y versiones posteriores:inlinesolo se puede colocar en la lista deSELECTcomo raíz de una expresión o después de un LATERAL VIEW. Al colocar la función en la listaSELECT, no debe haber ninguna otra función generadora en la misma listaSELECTo se genera UNSUPPORTED_GENERATOR. MULTI_GENERATOR.Se aplica a
Databricks SQL
Databricks Runtime 12.2 LTS y versiones posteriores:La invocación de la cláusula ,LATERAL VIEW o, o de la lista
SELECT, queda obsoleta. En su lugar, invocainlinecomo un table_reference.
Ejemplos
Se aplica a:
Databricks Runtime 12.1 y versiones posteriores:
> SELECT inline(array(struct(1, 'a'), struct(2, 'b'))), 'Spark SQL';
1 a Spark SQL
2 b Spark SQL
> SELECT inline(array(struct(1, 'a'), struct(1, 'b'))),
inline(array(struct('c', 1.0), struct('d', 2.0))),
'Spark SQL';
1 a Spark SQL
2 b Spark SQL
Error: UNSUPPORTED_GENERATOR.MULTI_GENERATOR
Se aplica a
Databricks SQL
Databricks Runtime 12.2 LTS y versiones posteriores:
> SELECT i.*, 'Spark SQL'
FROM inline(array(struct(1, 'a'), struct(2, 'b'))) AS i;
1 a Spark SQL
2 b Spark SQL
> SELECT i1.*, i2.*, 'Spark SQL'
FROM inline(array(struct(1, 'a'), struct(1, 'b'))) AS i1,
inline(array(struct('c', 1.0), struct('d', 2.0))) AS i2;
1 a c 1.0 Spark SQL
1 b c 1.0 Spark SQL
1 a d 2.0 Spark SQL
1 b d 2.0 Spark SQL