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

MySQL JSON_TABLE因JSON层级不匹配报错,求正确字段结构

正确的JSON_TABLE语句实现

针对你提供的多层级JSON结构,需要修正字段路径以匹配层级关系,同时补全语句的语法缺失部分,正确的SQL语句如下:

SELECT *
FROM JSON_TABLE(
  '[
    {
        "company": 2,
        "employee": {
            "payroll": 1,
            "id":130434
        },
        "resources": {
            "lastname": "Garcia",
            "name": "Luis"
        }
    }
]',
  '$[*]' COLUMNS(
    payroll INT PATH '$.employee.payroll',
    ID INT PATH '$.employee.id',
    lastname VARCHAR(100) PATH '$.resources.lastname',
    name VARCHAR(100) PATH '$.resources.name',
    company INT PATH '$.company' -- 可选:如果需要提取company字段
  )
) AS jt;

修改说明

  • 修正数据源参数:原语句中'$Employees'不是有效的JSON输入,替换为实际的JSON字符串(如果JSON存储在表列中,可直接使用列名,例如your_table.json_column)。
  • 匹配层级路径:根据JSON的嵌套结构,调整字段路径:
    • payroll和id属于employee子对象,路径改为$.employee.payroll、$.employee.id
    • lastname和name属于resources子对象,路径改为$.resources.lastname、$.resources.name
  • 补全语法:原语句缺少闭合的括号,补充后保证SQL语法合法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 02:04:55