我使用限制查询来获取前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
非常感谢
答案 0 :(得分:0)
创建一个子查询,提供前5个总计。然后使用您现在拥有的(您可以删除LIMIT 5
和排序)并在子查询上应用INNER JOIN
相对于总计。这将过滤掉所有不相关的行。