gpt4 book ai didi

sql - 计算多列中的出现次数

转载 作者:行者123 更新时间:2023-11-29 13:26:54 29 4
gpt4 key购买 nike

我正在制作一个应用程序,可以向人们展示可以评分的电影,不管是热的还是不热的。我想编写一个查询,让我了解一部电影的评分次数。评分表如下所示:

| id | winner | loser |
| 1 | 1 | 2 |
| 2 | 2 | 3 |
| 3 | 1 | 3 |

我可以通过运行这样的查询来获得电影“获胜”的次数:

SELECT winner, count(winner) AS number_of_wins
FROM movie_results
GROUP BY winner
ORDER BY number_of_wins DESC;

但我想得到另一个查询,显示一部电影与其他电影相比的总次数,即一部电影似乎被评为的次数,无论它的评分高于还是低于另一部电影.仅使用 SQL 查询实现此目的的最简单方法是什么?

最佳答案

这是一种方法,使用union all:

select movie, count(*) as nummatches, sum(win) as numwins
from ((select winner as movie, 1 as win from match_results) union all
(select loser, 0 from match_results)
) wl
group by movie;

关于sql - 计算多列中的出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32169821/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com