Funciones de matriz - Amazon Timestream

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Funciones de matriz

Timestream for LiveAnalytics admite las siguientes funciones de matriz.

Función Tipo de datos de salida Descripción

array_distinct (x)

matriz

Elimine los valores duplicados de la matriz x.

SELECT array_distinct(ARRAY[1,2,2,3])

Ejemplo de resultado: [ 1,2,3 ]

array_intersect (x, y)

matriz

Devuelve una matriz de los elementos en la intersección de x e y, sin duplicados.

SELECT array_intersect(ARRAY[1,2,3], ARRAY[3,4,5])

Ejemplo de resultado: [ 3 ]

array_union (x, y)

matriz

Devuelve una matriz de los elementos en la unión de x e y, sin duplicados.

SELECT array_union(ARRAY[1,2,3], ARRAY[3,4,5])

Ejemplo de resultado: [ 1,2,3,4,5 ]

array_except (x, y)

matriz

Devuelve una matriz de elementos en x pero no en y, sin duplicados.

SELECT array_except(ARRAY[1,2,3], ARRAY[3,4,5])

Ejemplo de resultado: [ 1,2 ]

array_join (x, delimiter, null_replacement)

varchar

Concatena los elementos de la matriz dada mediante el delimitador y una cadena opcional para reemplazar los valores nulos.

SELECT array_join(ARRAY[1,2,3], ';', '')

Ejemplo de resultado: 1;2;3

array_max (x)

igual que los elementos de la matriz

Devuelve el valor máximo de la matriz de entrada.

SELECT array_max(ARRAY[1,2,3])

Ejemplo de resultado: 3

array_min (x)

igual que los elementos de la matriz

Devuelve el valor mínimo de la matriz de entrada.

SELECT array_min(ARRAY[1,2,3])

Ejemplo de resultado: 1

array_position (x, elemento)

bigint

Devuelve la posición de la primera aparición del elemento en la matriz x (o 0 si no se encuentra).

SELECT array_position(ARRAY[3,4,5,9], 5)

Ejemplo de resultado: 3

array_remove (x, elemento)

matriz

Elimine todos los elementos que sean iguales al elemento de la matriz x.

SELECT array_remove(ARRAY[3,4,5,9], 4)

Ejemplo de resultado: [ 3,5,9 ]

array_sort (x)

matriz

Ordena y devuelve la matriz x. Los elementos de x deben poder ordenarse. Los elementos nulos se colocarán al final de la matriz devuelta.

SELECT array_sort(ARRAY[6,8,2,9,3])

Ejemplo de resultado: [ 2,3,6,8,9 ]

arrays_overlap (x, y)

boolean

Comprueba si las matrices x e y tienen en común algún elemento que no sea nulo. Devuelve null si no hay elementos no nulos en común pero alguna de las matrices contiene nulos.

SELECT arrays_overlap(ARRAY[6,8,2,9,3], ARRAY[6,8])

Ejemplo de resultado: true

cardinalidad (x)

bigint

Devuelve el tamaño de la matriz x.

SELECT cardinality(ARRAY[6,8,2,9,3])

Ejemplo de resultado: 5

concat (matriz1, matriz2,..., matrizN)

matriz

Concatena las matrices matriz1, matriz2,..., arrayN.

SELECT concat(ARRAY[6,8,2,9,3], ARRAY[11,32], ARRAY[6,8,2,0,14])

Resultado de ejemplo: [ 6,8,2,9,3,11,32,6,8,2,0,14 ]

element_at (matriz (E), índice)

E

Devuelve el elemento de la matriz en un índice dado. Si el índice es inferior a 0, element_at accede a los elementos desde el último hasta el primero.

SELECT element_at(ARRAY[6,8,2,9,3], 1)

Ejemplo de resultado: 6

repetir (elemento, recuento)

matriz

Repita el elemento para contar los tiempos.

SELECT repeat(1, 3)

Ejemplo de resultado: [ 1,1,1 ]

inverso (x)

matriz

Devuelve una matriz que tiene el orden inverso al de la matriz x.

SELECT reverse(ARRAY[6,8,2,9,3])

Ejemplo de resultado: [ 3,9,2,8,6 ]

secuencia (inicio, parada)

matriz (bigint)

Genera una secuencia de números enteros desde el principio hasta la parada, incrementándola en 1 si start es menor o igual que stop; de lo contrario, en -1.

SELECT sequence(3, 8)

Ejemplo de resultado: [ 3,4,5,6,7,8 ]

secuencia (inicio, parada, paso)

matriz (bigint)

Genera una secuencia de números enteros de principio a fin, incrementándola paso a paso.

SELECT sequence(3, 15, 2)

Ejemplo de resultado: [ 3,5,7,9,11,13,15 ]

secuencia (inicio, parada)

matriz (marca de tiempo)

Genere una secuencia de marcas de tiempo desde la fecha de inicio hasta la fecha de finalización, incrementándolas en 1 día.

SELECT sequence('2023-04-02 19:26:12.941000000', '2023-04-06 19:26:12.941000000', 1d)

Ejemplo de resultado: [ 2023-04-02 19:26:12.941000000,2023-04-03 19:26:12.941000000,2023-04-04 19:26:12.941000000,2023-04-05 19:26:12.941000000,2023-04-06 19:26:12.941000000 ]

secuencia (inicio, parada, paso)

matriz (marca de tiempo)

Genere una secuencia de marcas de tiempo desde el principio hasta el final, incrementándolas paso a paso. El tipo de datos del paso es el intervalo.

SELECT sequence('2023-04-02 19:26:12.941000000', '2023-04-10 19:26:12.941000000', 2d)

Ejemplo de resultado: [ 2023-04-02 19:26:12.941000000,2023-04-04 19:26:12.941000000,2023-04-06 19:26:12.941000000,2023-04-08 19:26:12.941000000,2023-04-10 19:26:12.941000000 ]

shuffle (x)

matriz

Genera una permutación aleatoria de la matriz x dada.

SELECT shuffle(ARRAY[6,8,2,9,3])

Ejemplo de resultado: [ 6,3,2,9,8 ]

rebanada (x, inicio, longitud)

matriz

Subestablece la matriz x empezando por el inicio del índice (o empezando por el final si el inicio es negativo) con una longitud igual a la longitud.

SELECT slice(ARRAY[6,8,2,9,3], 1, 3)

Ejemplo de resultado: [ 6,8,2 ]

zip (matriz1, matriz2 [,...])

matriz (fila)

Fusiona las matrices dadas, por elementos, en una sola matriz de filas. Si los argumentos tienen una longitud irregular, los valores faltantes se rellenan con. NULL

SELECT zip(ARRAY[6,8,2,9,3], ARRAY[15,24])

Resultado de ejemplo: [ ( 6, 15 ),( 8, 24 ),( 2, - ),( 9, - ),( 3, - ) ]