Filtrado de matrices mediante UNNEST - Amazon Athena

Filtrado de matrices mediante UNNEST

Para filtrar una matriz que contiene una estructura anidada por uno de sus elementos secundarios, emita una consulta con un operador UNNEST. Para obtener más información acerca de UNNEST, consulte Aplane Matrices anidadas.

Por ejemplo, esta consulta encuentra nombres de host de sitios del conjunto de datos.

WITH dataset AS ( SELECT ARRAY[ CAST( ROW('aws.amazon.com', ROW(true)) AS ROW(hostname VARCHAR, flaggedActivity ROW(isNew BOOLEAN)) ), CAST( ROW('news.cnn.com', ROW(false)) AS ROW(hostname VARCHAR, flaggedActivity ROW(isNew BOOLEAN)) ), CAST( ROW('netflix.com', ROW(false)) AS ROW(hostname VARCHAR, flaggedActivity ROW(isNew BOOLEAN)) ) ] as items ) SELECT sites.hostname, sites.flaggedActivity.isNew FROM dataset, UNNEST(items) t(sites) WHERE sites.flaggedActivity.isNew = true

Devuelve:

+------------------------+ | hostname | isnew | +------------------------+ | aws.amazon.com | true | +------------------------+