Oracle timestamp with timezone in where 子句问题

Oracle timestamp with timezone in where clause issue

我有以下 sql 查询

select * from MY_TABLE
 MY_COL >= to_timestamp_tz('08-03-17 07:25:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR') and 
 MY_COL <= to_timestamp_tz('08-03-17 09:08:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR')

其中至少有以下 2 个条目(如 sql 开发人员中所示)。

03-AUG-17 07.25.51.576000000 AM AMERICA/NEW_YORK
03-AUG-17 07.31.33.553000000 AM AMERICA/NEW_YORK

我的查询returns 没有条目。我希望能收回这两个条目。有什么明显的东西是我在这里遗漏的吗?

感谢

请仔细看这里

MY_COL >= to_timestamp_tz('08-03-17 07:25:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR') and 
 MY_COL <= to_timestamp_tz('08-03-17 09:08:00.0000 EST', 'dd-mm-yy hh24:mi:ss.ff TZR')

日期字符串为:'08-03-17 ...,格式字符串为:'dd-mm-yy ....

  • dd- 是 DAY = 08
  • mm - 是 MONTH = 03
  • yy - 是年 = 17

请签到the documentation: format models

因此,您的查询正在查找以下日期:

  • 大于08-MARCH-2017 07:25
  • 低于8-MARCH-2017 09:08

查询没有找到这些记录不足为奇:

03-AUG-17 .....
03-AUG-17 .....

因为八月不是三月