SQL日期筛选器

SQL日期筛选器,sql,oracle,datetime,timestamp,Sql,Oracle,Datetime,Timestamp,我运行了下面的查询,不知何故我觉得结果是错误的 SQL> select to_char(starttime,'dd-mm-YYYY hh24:mi:ss') from report where dateofmonth between to_timestamp_tz('22-Apr-2013 12:00:00','dd-mm-YYYY hh24:mi:ss') and to_timestamp_tz ('23-Apr-2013 14:00:00','dd-mm-YYY

我运行了下面的查询,不知何故我觉得结果是错误的

SQL> select to_char(starttime,'dd-mm-YYYY hh24:mi:ss') 
from report 
where dateofmonth between 
    to_timestamp_tz('22-Apr-2013 12:00:00','dd-mm-YYYY hh24:mi:ss') 
    and to_timestamp_tz ('23-Apr-2013 14:00:00','dd-mm-YYYY hh24:mi:ss');

TO_CHAR(STARTTIME,
--------------------
23-04-2013 22:43:59
23-04-2013 13:43:37

SQL> select to_timestamp_tz(starttime,'dd-mm-YYYY hh24:mi:ss') 
from report 
where dateofmonth between 
    to_timestamp_tz('22-Apr-2013 12:00:00','dd-mm-YYYY hh24:mi:ss') 
    and to_timestamp_tz ('23-Apr-2013 14:00:00','dd-mm-YYYY hh24:mi:ss');

TO_TIMESTAMP_TZ(STARTTIME,'DD-MM-YYYYHH24:MI:SS')
-------------------------------------------------
23-APR-13 10.43.59 PM -07:00
23-APR-13 01.43.37 PM -07:00
我不知道为什么结果中会出现晚上10点的时间。

Manjit


您选择的是starttime列,但where子句具有dateofmonth列。在查询中同时选择starttime和dateofmonth,并检查其结果是否正确。

这是因为
dateofmonth
对一天中的时间不敏感,只检查日期是否正确?您能帮我将其设置为对时间敏感吗?我不知道怎么做