Schaltjahr in Oracle DB ermitteln
Mittels Oracle Built-In Functions decode, extract und last_day kann die Frage, ob ein Datum oder eine Jahreszahl ein Schaltjahr ist, mit wenigen Codezeilen beantwortet werden.
Schaltjahr JA/NEIN wird auf Basis eines Datums ermittelt
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
SELECT decode( extract( day from last_day( to_date(('01.02.' || to_char( -- Wenn ihr schon ein Date an der Hand habt, kann das TO_DATE entfernt werden -- Das Datum 18.05.2012 kann durch jedes x-beliebige Datum ersetzt werden EXTRACT (YEAR FROM TO_DATE('18.05.2012','dd.mm.yyyy')) ) ),'dd.mm.yyyy' ) ) ),28,'NEIN',29,'JA') AS SCHALTJAHR_JN FROM DUAL; |
Schaltjahr JA/NEIN wird aus einer Jahreszahl ermittelt
1 2 3 4 5 6 7 8 |
SELECT decode( extract( day from last_day( to_date(('01.02.' || to_char(&JAHR_YYYY)),'dd.mm.yyyy')) ),28,'NEIN',29,'JA') AS SCHALTJAHR_JN FROM DUAL; |
SCHREIBEN SIE EINEN KOMMENTAR