Cześć,
Gdy wybieram dane przez MIN(column) i MAX(column) w jednym zapytaniu - jak mogę wybrać dodatkowo ich czas?
Cześć,
Gdy wybieram dane przez MIN(column) i MAX(column) w jednym zapytaniu - jak mogę wybrać dodatkowo ich czas?
Jaki silnik - MySQL, (...)?
select
t.colmin,
min(i.data) datamin,
t.colmax,
min(a.data) datamax
from
(select min(col) colmin, max(col) colmax from tab) t
join tab i on i.col = colmin
join tab a on a.col = colmax
group by
t.colmin,
t.colmax
jak się nie dupnąłem to coś takiego
Można też funkcjami analitycznymi spróbować. Koncept:
select * from
(
select
first_value(col1) over (order by atrybut) min_attr,
first_value(col2) over (order by atrybut) min_time,
last_value(col1) over (order by atrybut) max_attr,
last_value(col2) over (order by atrybut) max_time,
row_number() over (order by atrybut) rn
from tab
) where rn=1
;
col1 - wartości
col2 - czas
https://dev.mysql.com/doc/refman/8.0/en/window-functions-usage.html