Oracle / SQL - 在特定的sysdate时间选择记录

时间:2011-04-28 15:41:31

标签: sql oracle case

我有一个每天运行多次的查询,但问题是我们希望查询在特定时间运行时返回结果。因此,对于此示例,我只希望在早上8点运行查询时返回记录。我认为这可能有用

case
    when to_char(sysdate,'HH24') = '08' then
        select
            *
        from
            tablename
end

确实是在早上8点的时候,但除此之外它错误而不是没有记录。

有什么想法吗?


好吧,那对我来说是愚蠢的。我想是这样的。我不得不使用if if then条件。是时候喝更多咖啡了。

2 个答案:

答案 0 :(得分:6)

也许:

    select
        *
    from
        tablename
    where 
        to_char(sysdate,'HH24') = '08';

答案 1 :(得分:5)

这听起来像你想要的

SELECT *
  FROM tablename
 WHERE to_char( sysdate, 'HH24' ) = '08'