В SNOWFLAKE у меня есть такая структура данных:
ORGANIZATION TABLE
------------------
Org:variant
------------------
{
relationships: [{
{ name: 'mother', value: a },
{ name: 'siblings', value: [ 'c', 'd' ] }
}]
}
PEOPLE TABLE
-------------------
Person:variant
-------------------
{
id: a
name: Mary
}
-------------------
{
id: b
name: Joe
}
-------------------
{
id: c
name: John
}
Я хочу получить результат:
ORGANIZATION | PEOPLE
---------------------------------------------------|----------------------------
{ |[
relationships: [{ | {
{ name: 'mother', value: a }, | id: a,
{ name: 'siblings', value: [ 'c', 'd' ] } | name: Mary
}] | },
} | {
| id: b,
| name: Joe
| },
| {
| id: c,
| name: john
| }
|]
Я уверен, что ARRAY_AGG как-то задействован, но я 'м в недоумении, как бы я сгруппировал результаты в один массив значений.
Мой текущий запрос:
SELECT Org, ARRAY_AGG(Person) as People
FROM Organizations
INNER JOIN People ON People.id IN Org.relationships...?? (I'm lost here)
GROUP BY Org