Compartir vía


ARRAY_SLICE (consulta NoSQL)

SE APLICA A: NoSQL

Devuelve un subconjunto de una expresión de matriz utilizando el índice y la longitud especificados.

Sintaxis

ARRAY_SLICE(<array_expr>, <numeric_expr_1> [, <numeric_expr_2>])  

Argumentos

Descripción
array_expr Una expresión de matriz.
numeric_expr_1 Expresión numérica que indica el índice donde se va a comenzar la matriz para el subconjunto. Opcionalmente, se pueden usar valores negativos para especificar el índice inicial relativo al último elemento de la matriz.
numeric_expr_2(Opcional) Expresión numérica opcional que indica la longitud máxima de los elementos de la matriz resultante.

Tipos de valores devueltos

Devuelve una expresión de matriz.

Ejemplos

El siguiente ejemplo muestra cómo obtener diferentes porciones de una matriz usando la función.

SELECT VALUE {
    sliceFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0),
    sliceFromSecond: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 1),
    sliceFromLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -1),
    sliceFromSecondToLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -2),
    sliceThreeFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0, 3),
    sliceTwelveFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0, 12),
    sliceFiveFromThird: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 3, 5),
    sliceOneFromSecondToLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -2, 1)
}
[
  {
    "sliceFromStart": [70, 86, 92, 99, 85, 90, 82],
    "sliceFromSecond": [86, 92, 99, 85, 90, 82],
    "sliceFromLast": [82],
    "sliceFromSecondToLast": [90, 82],
    "sliceThreeFromStart": [70, 86, 92],
    "sliceTwelveFromStart": [70, 86, 92, 99, 85, 90, 82],
    "sliceFiveFromThird": [99, 85, 90, 82],
    "sliceOneFromSecondToLast": [90]
  }
]

Comentarios

  • Esta función del sistema no usa el índice.