2008-12-19 8 views
5

Quelqu'un peut-il me dire à quelle fréquence une vue matérialisée est réglée pour se rafraîchir avec le réglage suivant?Oracle Visualisation matérialisée Visualisation de l'heure

FORCE DE PIXELS SUR DEMANDE AVEC DÉBUT sysdate + 0 (rond (sysdate) + 1/24) + 1

je pense que je l'ai lu toutes les heures, mais je ne suis pas sûr

Répondre

7
SQL> alter session set nls_date_format = 'yyyy-mm-dd :hh24:mi:ss'; 

Session changed. 

SQL> select sysdate from dual; 

SYSDATE 
-------------------- 
2008-12-19 :12:18:28 

SQL> select (round(sysdate) + 1/24) + 1 from dual; 

(ROUND(SYSDATE)+1/24 
-------------------- 
2008-12-21 :01:00:00 
4

Pour répondre à votre première question (sera cette course une fois par heure?):

Non, cela exécutera une fois lors de sa création en raison de cette clause:

START WITH sysdate+0 

Personnellement, je pense que le "+0" est étranger, comme maintenant est maintenant.

Ensuite, il se déroulera demain à 1 h, en raison de la clause suivante:

NEXT (round(sysdate) + 1/24) + 1 

Le « 1/24 » partie quand calcule 1 heures est, puisque les dates Oracle sont stockés sous forme de nombres, la partie décimale indiquant les heures, les minutes, etc. La syntaxe est très bien.

+0

+1 pour une explication plus détaillées. Pour plus de précisions, round (sysdate) vous donne MM/DD/YY @ 12:00:00. + 1/24 (une heure) rend la valeur MM/JJ/AA @ 01:00:00. +1 (un jour) fait la valeur MM/DD + 1/YY 01:00:00. – craig

0

je pense que l'aide

NEXT (trunc(sysdate) + 1/24) + 1 

est plus précis