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

如何从Kairos返回的JSON数据中选取指定键并求最大值?

解决方案:提取种族概率并计算最大值

Got it!要从Kairos返回的JSON数据里提取black、white、hispanic、asian、other这五个种族概率值,再找出它们的最大值,咱们可以用PostgreSQL的JSON操作符和数值函数来实现,具体步骤和代码如下:

核心思路

  1. 提取并转换数值:用->>操作符从JSON字段中提取每个种族的概率文本值,再转换为numeric类型(这样才能进行数值比较)。
  2. 计算最大值:用PostgreSQL内置的GREATEST()函数,传入五个转换后的数值,直接返回其中的最大值。

完整SQL查询

SELECT
    -- 可选:单独列出每个种族的概率值
    (data->'images'->0->'faces'->0->'attributes'->>'black')::numeric AS black_probability,
    (data->'images'->0->'faces'->0->'attributes'->>'white')::numeric AS white_probability,
    (data->'images'->0->'faces'->0->'attributes'->>'hispanic')::numeric AS hispanic_probability,
    (data->'images'->0->'faces'->0->'attributes'->>'asian')::numeric AS asian_probability,
    (data->'images'->0->'faces'->0->'attributes'->>'other')::numeric AS other_probability,
    -- 计算五个值中的最大值
    GREATEST(
        (data->'images'->0->'faces'->0->'attributes'->>'black')::numeric,
        (data->'images'->0->'faces'->0->'attributes'->>'white')::numeric,
        (data->'images'->0->'faces'->0->'attributes'->>'hispanic')::numeric,
        (data->'images'->0->'faces'->0->'attributes'->>'asian')::numeric,
        (data->'images'->0->'faces'->0->'attributes'->>'other')::numeric
    ) AS highest_race_probability
FROM facedata
WHERE data->'Errors' IS NULL;

注意事项

  • 处理缺失字段:如果Kairos的响应偶尔会缺少某个种族的键(比如某些场景下没有hispanic字段),可以用COALESCE()函数给缺失值设置默认值(比如0),避免GREATEST()返回NULL。示例:
    GREATEST(
        COALESCE((data->'images'->0->'faces'->0->'attributes'->>'black')::numeric, 0),
        COALESCE((data->'images'->0->'faces'->0->'attributes'->>'white')::numeric, 0),
        COALESCE((data->'images'->0->'faces'->0->'attributes'->>'hispanic')::numeric, 0),
        COALESCE((data->'images'->0->'faces'->0->'attributes'->>'asian')::numeric, 0),
        COALESCE((data->'images'->0->'faces'->0->'attributes'->>'other')::numeric, 0)
    ) AS highest_race_probability
    
  • 简化查询:如果不需要单独列出每个种族的概率,只需要最大值,可以去掉前面的字段列表,只保留GREATEST()部分即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 07:04:00