Benutzer-Werkzeuge

Webseiten-Werkzeuge


prog:sql_oracle_model_clause

Die SQL Model Clause in der Oracle Datenbank verwenden

Malcesine am Gardasee - zu schön für SQL .-)

Mit der Model Clause können erweiterte Analysen und Funktionen auf der Ergebnis Menge einer SQL Abfrage durchgeführt werden.

Übersicht Syntax:

SQL Abfrage
MODEL
PARTITION BY ()
DIMENSION BY ()
MEASURES()
RULES()

Ein erstes Beispiel für eine SQL Abfrage für eine dynamischen Kalender für den gerade aktuellen Tag:

COLUMN KEY     heading "Stunde"
COLUMN row_val heading "Datum und Stunde"
 
SELECT * FROM (SELECT  dummy AS KEY, dummy AS row_val FROM dual)
MODEL
	DIMENSION BY (0 AS KEY)
	MEASURES( CAST( NULL AS DATE ) AS row_val )
	RULES ITERATE (24)
    ( row_val[ITERATION_NUMBER] = trunc(sysdate)+(1/24*ITERATION_NUMBER) )
/

Die obige SQL Abfrage mit DUAL dient nur dazu im ersten Schritt nur eine Zeile zu erzeugen, diese wird aber erst gar nicht ausgewertet. Mit der RULES ITERATE (24) Angabe wird eine Liste mit 24 Zeilen erzeugt.

Mit dieser Technik läßt sich dann eine komplexe dynamische universelle Zeit Dimension erstellen.

Demnächst mehr …


Quellen

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
"Autor: Gunther Pipperr"
prog/sql_oracle_model_clause.txt · Zuletzt geändert: 2015/11/22 16:04 von Gunther Pippèrr