gpt4 book ai didi

MySQL : getting top 100 records for each category

转载 作者:行者123 更新时间:2023-11-29 06:14:04 25 4
gpt4 key购买 nike

我有一个名为:consultant_project_score 的表,其中包含以下字段 idproject_idfinal_score。我想生成一个查询,显示每个 project_id 的前 100 个 final_score。我正在使用 MySQL workbench 6.3,但我无法使用任何 create/insert 语句。有什么办法可以实现吗?

最佳答案

这对你有用。内部查询将根据 project_id 生成排名组,然后外部查询将过滤前 100 个结果。

注意:如果您有类似的 project_id 和 score 组合,它将不起作用。创建此 fiddle 以获得 2 个等级。

http://sqlfiddle.com/#!9/9e94d5/1

SELECT id1,
project_id,
final_score
FROM
(SELECT max(t1.id) AS id1,
t1.project_id,
t1.final_score,
count(*) AS rnk
FROM consultant_project_score t1
INNER JOIN consultant_project_score t2 ON t1.project_id=t2.project_id
WHERE t1.final_score<=t2.final_score
GROUP BY t1.project_id,
t1.final_score) t
WHERE rnk<=100

关于MySQL : getting top 100 records for each category,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36860976/

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