【发布时间】:2020-02-05 05:50:40
【问题描述】:
此查询显示演员列表,以及他们在 1980 年到 2000 年期间在动作类电影中演出的次数。我只想获取第一行,但没有找到问题的答案。 此外,如果我的查询有更好的解决方案,请告诉我。
电影(CODFILM、标题、年份、类型) 演员(CODACTOR,姓名,姓氏) CAST (CODFILM,CODACTOR)
YEAR 类型是 Number,它是只写年份发布
SELECT CODACTOR, GENRE,count(CODACTOR)
FROM FILM NATURAL JOIN CAST T
WHERE GENRE = 'Action' AND YEAR BETWEEN 1980 AND 2000
GROUP BY CODACTOR,GENRE
HAVING COUNT(CODACTOR) >= ALL(
SELECT COUNT(CODACTOR)
FROM FILM NATURAL JOIN CAST
WHERE GENRE = 'Action' AND CODACTOR = T.CODACTOR AND ANNO BETWEEN 1980 AND 2000)
ORDER BY COUNT(CODACTOR) DESC;
【问题讨论】:
-
Oracle 版本?导致如果 12 或更高...将此附加到您的查询 - 仅获取前 1 行
-
谢谢,它有效。