prog:sql_greatest_functions
Den größten oder kleinsten Wert verschiedener Spalten in SQL ermitteln - GREATEST und LEAST
ab 8i
Mit der GREATEST Funktion wird der höchste Wert der Übergebenen Werte Liste zurück gegeben, mit LEAST der niedrigste Wert.
Der erste Parameter der Liste bestimmt den Datentyp!
Enthält die Liste einen Null Wert wird Null zurückgegeben.
Wird VARCHAR2 als Datentyp erkannt auf die Linguistischen Einstellungen der Umgebung achten, diese legen fest ob zum Beispiel ein Ä kleiner oder größer ein A ist.
Bei gleichen Werte wird einer der Werte zurückgegeben.
Das höchsten Wert von 3 Datumsfeldern ermitteln und die entsprechende Spalte ausgeben
Am einfachsten mit der SQL Funktion GREATEST :
SELECT CASE WHEN the_high_value = a THEN 'A Column is the greates' WHEN the_high_value = b THEN 'B Column is the greatest' ELSE 'C Column is the greatest' END , the_high_value , a , b , c FROM (SELECT greatest (nvl (a, sysdate - 10000) , nvl (b, sysdate - 10000) , nvl (c, sysdate - 10000) ) the_high_value , a , b , c FROM (SELECT sysdate + dbms_random.value (1, 100) a , sysdate + dbms_random.value (1, 100) b , sysdate + dbms_random.value (1, 100) c FROM dual)) / COLUMN_NAME THE_HIGH A B C ------------------------ -------- -------- -------- -------- A COLUMN IS the greates 15.12.15 15.12.15 08.10.15 14.10.15
Quellen
Database SQL Reference:
prog/sql_greatest_functions.txt · Zuletzt geändert: 2016/01/05 15:38 von gpipperr