Sie könnten den Datentyp INTERVAL DAY TO SECOND ausprobieren, aber er wird Ihnen keinen Speicherplatz sparen ... er ist jedoch sehr gut für diesen Zweck geeignet.
create table t1 (time_of_day interval day (0) to second(0));
insert into t1 values (TO_DSINTERVAL('0 23:59:59'));
select date '2009-05-13'+time_of_day
from t1;
Allerdings 11 Byte.