2016-09-27 34 views
0

Ich erstelle eine Auswahlliste basierend auf einer SQL-Abfrage auf meiner Oracle APEX-Seite.SQL-Werteliste 00:00 bis 24:00

Ich will es diese Zeitwerte zeigen:

00:00 
00:01 
00:02 
. 
.. 
... 
. 
. 
23:59 

Wie dies erreicht werden kann?

Antwort

0

Verwenden CONNECT BY für Oracle 10+

SELECT TO_CHAR(TRUNC(SYSDATE) + (LEVEL-1)/24/60, 'HH24:MI') 
    FROM DUAL 
CONNECT BY LEVEL <= 24*60 
+0

Danke, das ist genau das, was ich suchte. Ich habe gerade Code kopiert und eingefügt, wenn es um die Verbindung geht, jede Chance, Sie im Detail zu erklären, was in der Abfrage passiert, die Sie oben geschrieben haben? –

+0

Wir können 'LEVEL' mit der Anweisung' SELECT CONNECT BY' verwenden, um Zeilen aus einer Datenbanktabelle in eine Baumstruktur zu organisieren. 'LEVEL' gibt die Ebenennummer eines Knotens in einer Baumstruktur zurück. Die Wurzel ist Level 1, Kinder der Wurzel sind Level 2, Enkel sind Level 3 und so weiter. In unserem Fall verwenden wir 'CONNECT BY LEVEL <= N', um Zeilen mit der Folge von Werten zu erhalten. Für Grenzwerte verwenden wir die Anzahl der Minuten pro Tag '24 * 60' – AlexSmet

+0

Vielen Dank für die Erklärung, hat mir sehr geholfen –

Verwandte Themen