SQL query для поиска разницы значений
есть база данных вида:
[actor] [movie] [year]
[tom ] [ f10 ] [1990]
[tom ] [ f10 ] [1995]
[ben ] [ f10 ] [1997]
[tom ] [ f10 ] [1997]
[ben ] [ f10 ] [1998]
[ben ] [ f10 ] [1999]
Нужно найти актера у которого был наибольший перерыв между фильмами. В данном случае, это Том (1990-1995). Вопрос: можно ли это сделать внутри SQL query?
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
WITH cte AS ( SELECT actor,
`year` - LAG(`year`) OVER (PARTITION BY actor ORDER BY `year`) delta
FROM source_table )
SELECT actor
FROM cte
ORDER BY delta DESC LIMIT 1