加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 使用BETWEEN或<=,> =表示Oracle时间戳

发布时间:2020-12-12 06:32:00 所属栏目:MsSql教程 来源:网络整理
导读:我的Oracle表有一个列tmstp,其中包含TIMESTAMP(3)WITH TIME ZONE数据类型. 当我运行以下查询时 SELECT COUNT(column1) FROM table1 WHERE tmstp BETWEEN to_timestamp_tz('10-OCT-10 05.00.00.000000000 AM -05:00','DD-MON-RR HH.MI.SSXFF AM TZR') AND to_t
我的Oracle表有一个列tmstp,其中包含TIMESTAMP(3)WITH TIME ZONE数据类型.

当我运行以下查询时

SELECT COUNT(column1) 
  FROM table1 
 WHERE tmstp BETWEEN to_timestamp_tz('10-OCT-10 05.00.00.000000000 AM -05:00','DD-MON-RR HH.MI.SSXFF AM TZR')
                 AND to_timestamp_tz('11-OCT-10 04.59.59.999999999 AM -05:00','DD-MON-RR HH.MI.SSXFF AM TZR');

它提供的计数大约是以下查询的两倍:

SELECT COUNT(column1) 
  FROM table1 
 WHERE tmstp >= to_timestamp_tz('10-OCT-10 05.00.00.000000000 AM -05:00','DD-MON-RR HH.MI.SSXFF AM TZR') 
   AND tmstp <= to_timestamp_tz('11-OCT-10 04.59.59.999999999 AM  -05:00','DD-MON-RR HH.MI.SSXFF AM TZR');

我认为他们应该给出相同的结果.关于可能发生的事情的任何输入?我该怎么调试呢?

解决方法

抱歉,添麻烦了.我想到了.我的问题实际上也存在缺陷,因为我编辑它来隐藏机密数据.

在其中一个查询中,AM和时区偏移之间存在额外的空白,从而导致不同的结果.

愚蠢的我.

因此,如果转换的时间戳字符串与空格有点关闭,则答案可能会关闭.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读