J'ai besoin d'accéder à la valeur dans une structure définie comme mydata:struct<1:array<int>>. J'ai essayé d'accéder en utilisant mydata.1 mais ce n'est pas une syntaxe valide.

Exemple de données {1=[154873, 155630, 157698, 157945, 159058, 163148]}

0
MIK 23 sept. 2020 à 01:42

2 réponses

Meilleure réponse

Citez simplement le 1 avec des guillemets doubles:

SELECT mydata."1" FROM my_table
1
Theo 23 sept. 2020 à 08:03

Cela peut être interrogé à l'aide de l'opérateur unnest. utilisez la requête ci-dessous pour récupérer les éléments du tableau:

select t1.* from test cross join UNNEST("mydata"."1") as t1(record);
0
Prabhakar Reddy 23 sept. 2020 à 03:35