我试图从我的JSON列中解析出test-N-value。我已经尝试过使用JavaScript,但创建的列在这里返回NULL。
SELECT get_json_object('{"random_field": "ABC", "test-0-value":"1", "test-1-value":"2"}', '$.test-*-value');
字符串
有没有人有任何提示,如何从中提取出这些动态对象?预期的结果将是..但请记住,输出必须允许动态数量的键值对。
extracted_out
-------------
{"test-0-value":"1", "test-1-value":"2"}
型
1条答案
按热度按时间jjjwad0x1#
您可以使用from_json将json转换为map,分解map以获取键,值,仅过滤您需要的键,
收集key:value数组,将数组与逗号连接,使用str_to_map获取包含所需键的map,然后您可以选择使用to_json将其转换为JSON字符串
演示:
字符串
测试结果:
型
更新:
使用map_filter找到更好的解决方案
型