2011-04-28 7 views
0

하루에 여러 번 실행되는 쿼리가 있는데 특정 시간에 실행될 때 반환 결과 만 쿼리를 보내고 싶습니다. 따라서이 예제에서는 쿼리가 오전 8시에 실행될 때만 레코드를 반환하기를 원합니다. 나는 이것이 효과가있을 것이라고 생각했다.Oracle/SQL - 특정 sysdate 시간에 레코드 선택

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

그리고 실제로 8am 시간 동안하지만 그 밖의 어떤 기록도 반환하지 않고 오류를 낸다.

아이디어가 있으십니까?


그래, 그건 내 바보 같았 어. 나는 그것을 생각하는 것이 었습니다. 나는 조건의 if then 종류를 사용해야하는 것에 붙어 있었다. 더 많은 커피를 마실 시간이야. 아마도

답변

6

는 :

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

12 초 나를 이길 원하는 같은 소리! –

+0

이상 생각과 어리석은 질문에 대한 사과 : D – dscl

5

그것은 당신이

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

이상한 생각과 어리석은 질문에 대한 사과 : D – dscl

관련 문제