Genera un nuevo arreglo ARRAY a partir de un segmento del arreglo original. El segmento comienza en la posición start y abarca una longitud de length elementos.
Formato del comando
array<T> slice(array<T> <a>, <start>, <length>)
Descripción de parámetros
a: Obligatorio. Arreglo ARRAY. En
array<T>,Trepresenta el tipo de dato de los elementos del arreglo, los cuales pueden ser de cualquier tipo.start: Obligatorio. Posición inicial del segmento. La numeración comienza en 1 e indica que el corte inicia desde el primer elemento hacia la derecha. Si start es negativo, el conteo comienza desde el último elemento del arreglo hacia la izquierda.
length: Obligatorio. Longitud del segmento; debe ser mayor o igual a 0. Si este valor supera la longitud total del arreglo, la función devuelve un nuevo arreglo que abarca desde la posición start hasta el último elemento.
Valor devuelto
Devuelve un valor de tipo ARRAY.
Ejemplos de uso
-
Ejemplo 1: Extraiga elementos del arreglo
array(10, 20, 20, null, null, 30)a partir de la posición1con una longitud de segmento de3. Ejecute el siguiente comando:--返回[10, 20, 20]。 select slice(array(10, 20, 20, null, null, 30), 1, 3); -
Ejemplo 2: Extraiga elementos del arreglo
array(10, 20, 20, null, null, 30)a partir de la posición-2con una longitud de segmento de2. Ejecute el siguiente comando:--返回[NULL, 30]。 select slice(array(10, 20, 20, null, null, 30), -2, 2); -
Ejemplo 3: Extraiga elementos del arreglo
array(10, 20, 20, null, null, 30)a partir de la posición3con una longitud de segmento de10. Ejecute el siguiente comando:--返回[20, NULL, NULL, 30]。 select slice(array(10, 20, 20, null, null, 30), 3, 10); -
Ejemplo 4: Extraiga elementos del arreglo
array(10, 20, 20, null, null, 30)a partir de la posición3con una longitud de segmento de0. Ejecute el siguiente comando:--返回[]。 select slice(array(10, 20, 20, null, null, 30), 3, 0);
Funciones relacionadas
La función SLICE forma parte de las funciones para tipos complejos. Para consultar más funciones de procesamiento de datos de tipos complejos (como ARRAY, MAP, STRUCT y JSON), consulte Complex type functions.