gpt4 book ai didi

mysql - 每组最多选择 x 行

转载 作者:太空宇宙 更新时间:2023-11-03 11:01:30 25 4
gpt4 key购买 nike

有一个表:

id | name       | job      | rank
01 john teacher 4
02 mark teacher 2
03 phil plummer 1
04 dave teacher 7
05 jim plummer 9
06 bill plummer 2

我怎样才能选择每个作业的最多 2 行(如果可能的话按每个组中的排名 ASC 排序,以便选择每个组中排名最低的两个)。我要寻找的结果是:

02 mark teacher 2
01 john teacher 4
03 phil plummer 1
06 bill plummer 2

这基本上是按工作分组的,限制为 2,并按等级排序。我一直在尝试使用 GROUP BY 和 LEFT JOIN,但我不知道该怎么做。使用 GROUPING BY 作业创建作业的“临时列表”时,如何多次加入该作业?

最佳答案

SELECT  id, name, job, rank
FROM TableName a
WHERE
(
SELECT COUNT(*)
FROM TableName as f
WHERE f.job = a.job AND
f.rank <= a.rank
) <= 2;

关于mysql - 每组最多选择 x 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15295489/

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