首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Prisma -按_sum排序

Prisma -按_sum排序
EN

Stack Overflow用户
提问于 2022-02-01 14:15:33
回答 1查看 771关注 0票数 1

我的prisma中确实有一个简单的groupBy查询,如下所示:

代码语言:javascript
复制
const groupBy = await prisma.referral.groupBy({
  by: ['recommenderId'],
  _sum: {
     points: true,
  },
});

我正在寻找的是根据这个_sum值进行排序的方法。

目前的答复是:

代码语言:javascript
复制
{
    "groupBy": [
        {
            "_sum": {
                "points": 20000
            },
            "recommenderId": 3
        },
        {
            "_sum": {
                "points": 19000
            },
            "recommenderId": 2
        },
        {
            "_sum": {
                "points": 34000
            },
            "recommenderId": 1
        }
    ]
}

我需要的是:

代码语言:javascript
复制
{
    "groupBy": [
        {
            "_sum": {
                "points": 34000
            },
            "recommenderId": 1
        },
        {
            "_sum": {
                "points": 20000
            },
            "recommenderId": 3
        },
        {
            "_sum": {
                "points": 19000
            },
            "recommenderId": 2
        },
    ]
}

基于文档(https://www.prisma.io/docs/concepts/components/prisma-client/filtering-and-sorting#sorting),我尝试了这样的方法:

代码语言:javascript
复制
const groupBy = await prisma.referral.groupBy({
      by: ['recommenderId'],
      _sum: {
        points: true,
      },
      orderBy: [
        {
          _sum: 'desc',
        },
      ],
    });

但是在代码中我得到了错误:

参数_sum:在prisma.groupByReferral上获得无效值'desc‘。提供的字符串,预期的ReferralSumOrderByAggregateInput

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-01 15:29:02

您可以同时在不同的字段上使用_sum,因此还需要提供要对其进行排序的字段名:

代码语言:javascript
复制
const groupBy = await prisma.referral.groupBy({
      by: ['recommenderId'],
      _sum: {
        points: true,
      },
      orderBy: [
        {
          _sum: {
            // Add `points` key here
            points: 'desc'
          }
        },
      ],
    });
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70942071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档