Todos los productos
Search
Centro de documentos

MaxCompute:SLICE

Última actualización: Sep 03, 2026

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>, T representa 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ón 1 con una longitud de segmento de 3. 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 -2 con una longitud de segmento de 2. 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ón 3 con una longitud de segmento de 10. 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ón 3 con una longitud de segmento de 0. 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.