如何在Presto/Trino中从MongoDB获取并转换JSON对象列?
在Presto中将MongoDB的复合对象列转为JSON字符串
针对MongoDB中存储为嵌套对象的列(如示例里的en字段),可以直接使用Presto内置的to_json()函数完成转换,该函数能将Presto识别的ROW类型(对应MongoDB的嵌套对象)序列化为标准JSON字符串。
示例查询语句:
SELECT id, to_json(en) AS en_json FROM cities;
对应你提供的cities集合结构,查询返回的en_json字段值为:
{"description":"New york","price":100}
如果需要格式化后的JSON输出(带缩进),可以使用json_format()函数替代:
SELECT id, json_format(en) AS formatted_en_json FROM cities;
注:Presto的MongoDB连接器会自动将MongoDB的嵌套文档映射为Presto的ROW类型,因此直接使用内置JSON转换函数即可实现需求,无需自定义函数。
内容的提问来源于stack exchange,提问作者caeycae
相关产品推荐
相关产品推荐

