Нашли решение:
С https://docs.aws.amazon.com/athena/latest/ug/maps.html
Вы можете пойти в Афину и запустить:
WITH dataset AS (
SELECT MAP(
ARRAY['first', 'last', 'age'],
ARRAY['Bob', 'Smith', '35']
) AS user UNION ALL
SELECT MAP(
ARRAY['first', 'last', 'age'],
ARRAY['john', 'doe', '12']
) AS user
)
SELECT user FROM dataset WHERE CAST(user['age'] AS bigint) > 20
Так что ответ был то, что я спросил в моем примере! ха-ха
WHERE map[key] <operator> <value>
Также, если вы делаете:
SELECT user FROM dataset WHERE CAST(user['test'] AS bigint) > 20
А ключ test
не существует, он вернет 0 строку.