select END_TIME, START_TIME,to_char(END_TIME,'HH24') end_time, to_char(START_TIME,'HH24') start_time, case when (to_number(to_char(START_TIME,'HH24')) > 12) then extract( HOUR from ( cast(END_TIME+ INTERVAL '1' DAY AS TIMESTAMP) - cast( START_TIME AS TIMESTAMP) ) ) else extract( HOUR from ( cast(END_TIME AS TIMESTAMP) - cast(START_TIME AS TIMESTAMP) ) ) end working_hours from DB_TABLE