How to access complex types like arrays and structs in Arcadia

Arcadia only supports complex types such as structs & arrays on data stored as parquet. For details around additionla restrictions refer to this:

If accessing datasets with complex types through the UI, Arcadia will automatically generate the necessary SQL to handle complex types.

But if you are directly connecting to Arcadia Engine and running queries directly, you need to make sure your select statement are valid. To access ARRAY objects you have to use SQL that correctly specifies the pair of pos & item.

Let’s say we have a table called complex_sales with ARRAY column called category. To access category you have to use SQL such as this:

SELECT TA_0_CC_0.pos as category.pos, TA_0_CC_0.item as category.item FROM
complex_sales.sales_test_array TA_0 INNER JOIN TA_0.category TA_0_CC_0 LIMIT 100