gpt4 book ai didi

MySQL 查询 - 根据列获取计数总和

转载 作者:可可西里 更新时间:2023-11-01 08:20:50 26 4
gpt4 key购买 nike

我有一个包含操作和问题 ID 的 mysql 表。每个 Action 都有这样的分数:

     ACTION       | SCORE
downvote_question | -1
upvote_question | +1
in_cardbox | +2

我想查询得分最高的问题,但我想不出来。

http://sqlfiddle.com/#!2/84e26/15

到目前为止我的查询是:

SELECT count(*), l1.question_id, l1.action 
FROM `log` l1
GROUP BY l1.question_id, l1.action

它为我提供了每个 question_id 及其所有累积的操作。

我想要的是:

QUESTION_ID | SCORE
2 | 5
1 | 4
3 | 1
4 | 1
5 | 1

我想不通——我可能需要子查询、JOINS 或 UNIONS...

最佳答案

也许你可以试试这个。

SELECT  a.question_id, sum(b.score) totalScore
FROM `log` a INNER JOIN scoreValue b
on a.`action` = b.actionname
group by a.question_id
ORDER BY totalScore DESC

SQLFiddle Demo

关于MySQL 查询 - 根据列获取计数总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11951989/

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