Могу ли я сделать максимум (количество (*)) в SQL? - PullRequest
58 голосов
/ 13 марта 2010

Вот мой код:

    select yr,count(*)  from movie
join casting on casting.movieid=movie.id
join actor on casting.actorid = actor.id
where actor.name = 'John Travolta'
group by yr

Вот вопрос

Какие годы были самыми загруженными для Джона Траволты. Покажите количество фильмов, которые он снял за каждый год.

Вот структура таблицы:

movie(id, title, yr, score, votes, director)
actor(id, name)
casting(movieid, actorid, ord)

Это вывод, который я получаю:

yr  count(*)
1976    1
1977    1
1978    1
1981    1
1994    1
etcetc

Мне нужно получить строки, для которых count(*) макс.

Как мне это сделать?

Ответы [ 11 ]

0 голосов
/ 10 мая 2017
create view sal as
select yr,count(*) as ct from
(select title,yr from movie m, actor a, casting c
where a.name='JOHN'
and a.id=c.actorid
and c.movieid=m.id)group by yr

----- ВИД СОЗДАН -----

select yr from sal
where ct =(select max(ct) from sal)

Ю.Р. 2013

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...