Announcement

Collapse
No announcement yet.

Feiertage ermitteln oder berechnen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Feiertage ermitteln oder berechnen

    Hi zusammen,

    wie kann ich herausfinden (Oracle 11g DB), ob ein bestimmtes Datum auf einen Feiertag fällt? Gibt es da eine eingebaute Möglichkeit oder muss man sich das selber bauen?
    Soweit ich weiß hängen die Feiertage von Ostern ab und Ostern kann man berechnen (Gauß Formel?). Wobei es aber noch Unterschiede zwischen den einzelnen Bundesländern gibt.
    Ich kann auf einem der Systeme leider kein PL/SQL verwenden, sodass es mit Berechnen schwierig wird, wobei man evtl. etwas mit CASE WHEN erreichen könnte.
    Oder ich erstelle eine statische Tabelle mit den ganzen Datumswerten im verwendeten Datums-/Jahresbereich und vergleiche darauf (WHERE (NOT) EXISTS .../ WHERE datum (NOT) IN ....). Das dürfte evtl. auch schneller gehen bei vielen kleinen Abfragen (mit Index auf dem Datum) oder?

    Was meint ihr dazu?

    Grüße,
    Yusuf

  • #2
    Hi,

    du brauchst auf jeden Fall eine Tabelle mit den Feiertagen pro jahr. Die kannst Du denn per Outerjoin mit der Hauptabfrage verknüpfen.
    Wird ein Ergebnis geliefert, so bekommst Du einen Wert zurück, andernfalls NULL.

    Dim
    Zitat Tom Kyte:
    I have a simple philosophy when it comes to the Oracle Database: you can treat it as a black box and just stick data into it, or you can understand how it works and exploit it as a powerful computing environment.

    Comment


    • #3
      Hier mal ein paar Links mit Funktionen die das Osterdatum berechnen:

      http://www.adp-gmbh.ch/ora/plsql/calendar.html
      http://blog.whitehorses.nl/2010/05/1...astern-sunday/
      http://foxinfotech.blogspot.de/2012/...r-for-any.html

      Gemäss Wikipedia ist das ganze nicht so trivial, zumindest nicht wenn es genau sein soll und für jedes Jahr stimmen soll.
      Wenn du es genau machen willst, musst du noch überprüfen welchen Kalender der Benutzer verwendet.

      Gruss

      Comment


      • #4
        Ostern ist in allen Bundesländern gleich.....
        Christian

        Comment


        • #5
          Vielen Dank für die Infos! Wie bestimmt man denn die Feiertage, die in den Bundesländern anders sind? Werden die jedes Jahr neu festgelegt? Oder vernachlässigt ihr die Tage?

          Comment


          • #6
            http://de.wikipedia.org/wiki/Feiertage_in_Deutschland
            Christian

            Comment

            Working...
            X