假设我的数据中有以下json变量数组:
pets
---
[{"type":"dog", "name":"fido"}, {"type":"cat", "name":"steve"}, {"type":"dog", "name":"carl"}]
[{"type":"dog", "name":"ellie"}, {"type":"fish", "name":"goldie"}]
[{"type":"cat", "name":"simone"}, {"type":"lizard", "name":"sparky"}]
我将如何构造一个SQL查询,以使每一行都有一个dog names的数组,如下所示:
dog_names
---
["fido", "carl"]
["ellie"]
[]
目前,我得到的最大收获是使用以下工具过滤数据:
filter(pets, r -> r.type= 'dog')
这会正确地过滤数组,并且在数组的基数为1的情况下,允许我使用索引正确地进行查询,但我希望捕获所有的名字(并且在没有找到狗的情况下不中断).
需要说明的是,PETS的数据类型是ROW.