我想从一个JSON中提取所有标题为'title2'的元素,这个JSON里面有更多的JSON嵌套。我有在MySQL上工作的代码,但我不能把它翻译成Redshift。
JSON结构。
{"master-title": [{"title": "a", "title2": "b"},{"title": "c", "title2: "d", "title3": "e"}], "master-title2": [{"title": "f", "title2": "g", "title3": "h"},{"title": "i", "title2": "j", "title3": "k"}]}
MySQL查询(按要求工作)。
select id
,json_extract(myJSON, '$**.title2')),0)
from myTable
MySQL的输出。
["b", "d","g","j"]
我的问题是,在Redshift上我只能具体定义路径为。
JSON_EXTRACT_PATH_TEXT(myJSON, 'master-title2',0,'title')
所以我只能得到一个元素而不是所有的元素。
有什么办法可以评估所有的路径,并使用Redshift获得JSON数组中具有相同 "title2 "的所有元素?(与MySQL中的输出相同)
请先谢谢你。