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

如何从键值格式文档中查询cow与buffalo的所有不重复颜色组合

不重复动物-颜色组合查询实现方案

以下是不同场景下的查询实现方式,均会自动对动物名称+颜色的组合去重:

MongoDB 聚合查询

如果你的文档存储在MongoDB中,使用聚合管道即可实现:

db.你的集合名.aggregate([
  // 按动物名+颜色分组,天然去重
  {
    $group: {
      _id: {
        name: "$Animal.name",
        color: "$Animal.Color"
      }
    }
  },
  // 可选:按你需要的格式拼接输出
  {
    $project: {
      _id: 0,
      combination: { $concat: [ "$_id.name", ":", "$_id.color" ] }
    }
  }
])

命令行jq工具处理本地JSON文件

如果是本地JSON文件,用jq工具快速处理:

# -s 参数将多个输入JSON对象读为数组,unique自动按组合去重
jq -s 'map({name: .Animal.name, color: .Animal.Color}) | unique | map("\(.name):\(.color)")' 你的数据文件路径.json

MySQL JSON列查询

如果数据存在MySQL的JSON类型列中,用DISTINCT去重即可:

SELECT DISTINCT 
  CONCAT(
    JSON_UNQUOTE(data->'$.Animal.name'),
    ':',
    JSON_UNQUOTE(data->'$.Animal.Color')
  ) AS combination
FROM 你的表名;

注:你需求中提到的buffalo:white不存在于你给出的样例数据中,样例数据返回的水牛对应组合为buffalo:black,如果你的全量数据集包含该条数据,上述查询会自动返回对应结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 08:36:08