graphql - 如何按Graphql查询结果分组

标签 graphql graphql-java

我有以下 GraphQL 查询

query {
  Result: querydata {
    name
    code
    description
  }
}

返回给我以下数据
{
  "data": {
    "Result": [
      {
        "name": "Class1",
        "code": "ST1",
        "description": "Value"
      },
      {
        "name": "Class1",
        "code": "ST2",
        "description": "Value"
      },
      {
        "name": "Class2",
        "code": "FS1",
        "description": "Value"
      },
      {
        "name": "Class2",
        "code": "FS2",
        "description": "Value"
      }
    ]
  }
}

在此数据中,我有一个名称字段,可以是“Class1”或“Class2”。我不想以可以将 Class1 和 Class2 数据分开的方式对这些数据进行分组。有没有办法做到这一点。我可以通过提供名称过滤器运行 2 个单独的查询来实现这一点,但可以说我没有那个选项。

我想将结果转换如下
{
  "data": {
    "Result": [
      "Class1": [
          {
            "code": "ST1",
            "description": "Value"
          },
          {
            "code": "ST2",
            "description": "Value"
          }
      ]

      "Class2": [
          {
            "code": "FS1",
            "description": "Value"
          },
          {
            "code": "FS2",
            "description": "Value"
          }
      ]
    ]
  }
}

最佳答案

您所描述的是应该在客户端发生的事情,或者允许您的查询类型接收用于返回 propper 类的名称选项,然后假设它能够查找,下面的查询将适用于您需要的内容查询数据的名称

query {
  Class1: querydata(name: "Class1") {
    code
    description
  }
  Class2: querydata(name: "Class2") {
    code
    description
  }
}

关于graphql - 如何按Graphql查询结果分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52385064/

相关文章:

json - 如何使用 GraphQL 在 VueJS/Gridsome 中迭代 JSON 文件中的数据?

migration - 是否可以在GraphQL上弃用突变?

Github GraphQL递归列出目录中的所有文件

graphql - 在输入可以采用不同类型的地方制作 Graphql 输入

java - Graphql-java 中的自定义标量

lambda - Netlify 函数无法导入相关的 .graphql 类型定义文件

javascript - 嵌套的 React/Relay 组件没有收到 Prop

java - Graphql 没有为接口(interface)/联合定义解析器 - java

java - GraphQL Java 未正确检测 kotlin 枚举

java - 过滤嵌套字段,或将类型映射到查询