SQL query для поиска разницы значений

234
23 апреля 2022, 17:40

есть база данных вида:

[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?

Answer 1
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
READ ALSO
Зависший процесс на ip адресе

Зависший процесс на ip адресе

Возникла следующая проблема — при опросе ip адресов, которые берутся с БД, на некоторых ip адресах зависает метод подключенияСуть следующая...

235
Группировка вывода дочерних разделов в родительские Mysql

Группировка вывода дочерних разделов в родительские Mysql

Имеются города city, автомойки wash и посты на них bfrs

115
Помогите изменить sql запрос

Помогите изменить sql запрос

У меня на сайте(DRUPAL) есть модуль цитата дня, каждый день меняется цитата, мне надо что бы она менялась один раз в неделю, как реализовать, я что-то...

211