You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Trino中ARRAY<ROW(...)>转JSON的合规替代方法(JSON类型及json_format已弃用)

替代Trino中弃用的JSON类型与json_format函数的合规方案

你当前使用的SQL语句如下:

select 
  json_format(cast(COALESCE(array_of_row, array[]) as JSON))
from my_table

该语句虽能运行,但Trino官方文档指出JSON数据类型和json_format函数均已弃用,文档说明如下:

以下函数和运算符不符合SQL标准,应视为已弃用。根据SQL标准,不应存在JSON数据类型,JSON值应表示为字符串值。以下函数的剩余功能已被前文所述的函数覆盖。

合规替代方案

使用Trino提供的标准函数to_json()即可实现完全相同的功能,替代后的SQL语句为:

select 
  to_json(COALESCE(array_of_row, array[]))
from my_table

说明

  • to_json()函数直接将输入的SQL数据类型(如数组、行对象等)序列化为JSON格式的字符串,无需先转换为已弃用的JSON类型,完全符合SQL标准要求。
  • 原语句中COALESCE(array_of_row, array[])的逻辑保持不变,确保当array_of_row为null时用空数组兜底,to_json会将空数组正确序列化为[],与原语句输出结果一致。

内容的提问来源于stack exchange,提问作者zyxue

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 21:02:10