admin

我怎样才能只选择昨天的记录?

sql

我已经花了数小时在网路上搜寻这个问题的答案…

这是我目前拥有的:

select  *
from    order_header oh
where   tran_date = sysdate-1

阅读 122

收藏
2021-05-10

共1个答案

admin

使用:

AND oh.tran_date BETWEEN TRUNC(SYSDATE - 1) AND TRUNC(SYSDATE) - 1/86400

参考:TRUNC

在工具上调用函数tran_date意味着优化器将无法使用与其关联的索引(假设存在一个索引)。某些数据库(例如Oracle)支持基于函数的索引,这些索引允许对数据执行函数以最大程度地减少这种情况下的影响,但IME
DBA不允许这样做。我同意-在这种情况下,它们并不是真正必要的。

2021-05-10