等于最后一行限制的值

时间:2016-06-20 08:45:21

标签: mysql limit

我使用限制查询来获取前5位导演的列表,也计算他们的作品总数,例如

a 137
b 120
c 90
d 76
e 52

它确实有效,但如果最后一行还有一些名称相同的作品。它通常会发生......

f 52
g 52
h 52...

查询是:

SELECT 
   T_people.person,
   COUNT(ID_films) AS CountOfID_films
FROM
   ((MT_films
   JOIN ST_peoplefilms ON ((MT_films.ID_films = ST_peoplefilms.ID_films)))
   JOIN T_people ON ((T_people.ID_person = ST_peoplefilms.ID_person)))
GROUP BY T_people.person, T_people.man
HAVING (T_people.man = 1)
ORDER BY COUNT(ST_peoplefilms.ID_films) DESC
LIMIT 5

非常感谢

1 个答案:

答案 0 :(得分:0)

创建一个子查询,提供前5个总计。然后使用您现在拥有的(您可以删除LIMIT 5和排序)并在子查询上应用INNER JOIN相对于总计。这将过滤掉所有不相关的行。