【发布时间】:2020-02-14 09:39:17
【问题描述】:
我想了解两者的区别
someDate >= (CURRENT_TIMESTAMP - INTERVAL '1' DAY)
和
someDate >= (CURRENT_TIMESTAMP - 1)
因为对我来说似乎是一样的,但第二个似乎有更好的性能。
【问题讨论】:
-
在您的问题中添加详细信息,解释#2“似乎”如何具有更好的性能。我怀疑解析和准备“1天前”的单个值以便使用它在查询中进行过滤所花费的时间将对整体查询性能产生任何明显的影响,除非那时导致数百万行的不必要类型转换
-
@CaiusJard: 可能是因为 #1 返回
timestamp值而 #2 返回date值。如果someDate也是一个可能影响查询使用索引的日期。但只有查询的执行计划才能证明这一点
标签: sql oracle datetime timestamp intervals