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

如何将API获取的JSON数据与guide表关联查询获取指定字段?

解决方案

可以将JSON数据解析为临时表,再与guide表关联查询,以下是主流数据库的实现方式:

1. MySQL(5.7及以上版本)

使用JSON_TABLE函数解析JSON为临时表,通过guide_id关联查询:

SELECT g.guide_id, g.name, j.uuid
FROM guide g
JOIN JSON_TABLE(
  '[
    {"guide_id": 1, "uuid": "AAAA"},
    {"guide_id": 2, "uuid": "BBBB"},
    {"guide_id": 3, "uuid": "CCCC"},
    {"guide_id": 4, "uuid": "DDDD"}
  ]',
  '$[*]' COLUMNS(
    guide_id INT PATH '$.guide_id',
    uuid VARCHAR(255) PATH '$.uuid'
  )
) j ON g.guide_id = j.guide_id;

2. PostgreSQL

使用json_to_recordset(或jsonb_to_recordset)解析JSON,关联guide表:

SELECT g.guide_id, g.name, j.uuid
FROM guide g
JOIN json_to_recordset(
  '[
    {"guide_id": 1, "uuid": "AAAA"},
    {"guide_id": 2, "uuid": "BBBB"},
    {"guide_id": 3, "uuid": "CCCC"},
    {"guide_id": 4, "uuid": "DDDD"}
  ]'
) AS j(guide_id INT, uuid TEXT)
ON g.guide_id = j.guide_id;

3. SQL Server

使用OPENJSON函数解析JSON,关联查询:

SELECT g.guide_id, g.name, j.uuid
FROM guide g
JOIN OPENJSON(
  '[
    {"guide_id": 1, "uuid": "AAAA"},
    {"guide_id": 2, "uuid": "BBBB"},
    {"guide_id": 3, "uuid": "CCCC"},
    {"guide_id": 4, "uuid": "DDDD"}
  ]'
) WITH (
  guide_id INT '$.guide_id',
  uuid VARCHAR(255) '$.uuid'
) j ON g.guide_id = j.guide_id;

以上语句均会返回你期望的查询结果,仅保留guide表中存在的guide_id对应的记录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 01:02:19