Да, вы пропускаете почти весь последний день.Есть различные решения;Вероятно, самое простое:
t.logtime >= to_date('2011-01-01', 'yyyy-mm-dd')
and t.logtime < to_date('2011-04-01', 'yyyy-mm-dd')
Я бы тоже использовал буквальный синтаксис даты ANSI:
t.logtime >= date '2011-01-01'
and t.logtime < date '2011-04-01'
Другой способ:
trunc(t.logtime) between date '2011-01-01' and date '2011-03-31'
, но учтите, чтокоторый больше не может использовать индекс в журнале (хотя он может использовать индекс в trunc (лог)).