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

Metabase提取JSON键下划线后值报错,请求技术协助

问题解决:适配json字段的jsonb_object_keys调用及数值提取

错误原因

报错核心是jsonb_object_keys函数仅支持jsonb类型参数,但你的outgoing字段是json类型,必须显式转换类型才能匹配函数要求。另外注意table是PostgreSQL关键字,查询时要替换成你的实际表名。

修正后的SQL查询

SELECT 
    id, 
    outgoing,
    substring(j.key FROM '_(\d+)$') AS extracted_number
FROM 
    your_actual_table_name,
    CROSS JOIN LATERAL jsonb_object_keys(outgoing::jsonb) AS j(key);

关键改动说明

  • outgoing::jsonb:将原json类型字段强制转换为jsonb类型,满足jsonb_object_keys的参数要求
  • substring(j.key FROM '_(\d+)$'):用正则精准匹配最后一个下划线后的纯数字部分,比原正则_([^_]+)$更贴合你提取数值的需求(如果键名最后下划线后是其他字符,可换回原正则)
  • 替换your_actual_table_name为你的数据表真实名称,避免关键字冲突

预期结果

针对你的测试数据,查询会返回:

idoutgoingextracted_number
1{"a945248027_14454878":"processing"}14454878
2{"old.a945248027_14454878":"cancelled"}14454878

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 02:45:11