加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL查询与distinct和sum

发布时间:2020-12-12 08:44:24 所属栏目:MsSql教程 来源:网络整理
导读:我有以下混合的表,结合了颜色,水果和评分: [medleys]medley_id | color | fruit | rating==============================================1 red apple 252 blue pear 53 green apple 124 red apple 105 purple kiwi 56 purple kiwi 507 blue kiwi 38 blue pe
我有以下混合的表,结合了颜色,水果和评分:
[medleys]
medley_id   |   color   |   fruit   |   rating
==============================================
1               red         apple       25
2               blue        pear        5
3               green       apple       12
4               red         apple       10
5               purple      kiwi        5
6               purple      kiwi        50
7               blue        kiwi        3
8               blue        pear        9

我正在尝试编写一个ANSI兼容的SQL查询,它将组合每个独特的/不同的颜色 – 水果对,并且对每个对的个人评分值进行总和.因此,如果您在上表中运行查询,则会产生以下结果集:

[query]
color   |   fruit   |   sum
===========================
red         apple       35
blue        pear        14
blue        kiwi        3
green       apple       12
purple      kiwi        55

因此,查询看到表中有两个红苹果对,因此它为红苹果对创建了一个结果,并将其组成评级(25 10 = 35)等等加起来.

我相信我需要选择不同的颜色/水果值,但不能确定如何在相同的“水平/范围”下聚合评级:

SELECT
    distinct(color,fruit),sum(rating)
FROM
    medleys

订单没关系.颜色和水果是VARCHAR(50),评级为INT.提前致谢!

解决方法

SELECT color,fruit,sum(rating)
FROM medleys
GROUP BY color,fruit

Distinct用于选择不同的元素,而不是您想要聚合,并且您需要GROUP BY和聚合函数(SUM).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读