我有一个包含以下表格的数据库:
ACTOR (id, fname, lname, gender)
MOVIE (id, name, year, rank)
DIRECTOR (id, fname, lname)
CAST (a_id, m_id, role)
MOVIE_DIRECTOR (d_id, m_id)
Run Code Online (Sandbox Code Playgroud)
现在我想检索以下问题的数据。
十年是连续十年的序列。例如,1965, 1966, ..., 1974 是一个十年,1967, 1968, ..., 1976 也是如此。 找出电影数量最多的十年
我会通过生成年份,加入电影,然后聚合来做到这一点:
select y.year as decade_start, y.year + 9 as decade_end,
count(*) as num_movies
from (select distinct year from movies) y join
movies m
on m.year >= y.year and m.year < y.year + 10
group by y.year
order by count(*) desc
limit 1;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2987 次 |
| 最近记录: |