id checkin checkout
------------------------
1 12:27 18:10
2 11:00 19:59
Я хочу получить этот результат и исправить время заезда 11:00:00
и время проверки заказа 20: 00: 00.
Я использую этот запрос
select min(checktime)::time as checkin,
max(checktime)::time as checkout,
(case
when cast(min (a.checktime) as time) > '11:00:00' then
(extract (epoch from min (a.checktime)::time - '11:00:00')/3600 )
else 0
end) as shorthour_in ,
(case
when cast(max (a.checktime) as time) <= '20:00:00'
then (extract (epoch from '20:00:00' - max (a.checktime)::time )/3600 )
else 0
end) as shorthour_out
from attendance_FHLHR
id checkin checkout shorthour_in shorthour_out
---------------------------------------------------------
1 12:27 18:10 1.45 1.83
2 11:00 19:59 0 0.016
Может ли кто-нибудь подсказать мне, правильно ли запросить / рассчитать часы?