Поскольку max
является агрегатом, но ваш выбор действует для каждой строки, оба оператора не могут быть выполнены в одном и том же контексте строки.
Что вам нужно сделать, это вычислить максимальное значение в одном запросе, а затем сравнить с каждой строкой в другом контексте. Это можно сделать в течение одного выбора с помощью объединений.
select
date_diff('second',
timeseries.timestampminute,
max_query.maxts) as elapsed_sec
from timeseries
cross join (select max(timeseries.timestampminute) maxts
from timeseries)
as max_query