Was genau macht trunc(date, 'IW')?

Für mein Projekt benötige ich eine absolute numerische Korrespondenz zwischen den Tagen der Woche und 1...7 Werte.

Wie Sie wahrscheinlich wissen, die Verbindung zwischen Tagen und zahlen variieren je nach Gebietsschema, zum Beispiel in Deutschland, Montag ist 1, Sonntag ist 7, während in UNS der Montag ist 2, während am Sonntag ist 1.

So, die Suche nach einer Lösung fand ich folgenden code, der scheint, zu arbeiten, unabhängig von der Ländereinstellung, die Zuordnung von Montag=1...Sonntag=7:

1 + TRUNC (date) - TRUNC (date, 'IW')

Kann jemand mir erklären wie es funktioniert? Insbesondere kann ich einfach nicht verstehen, was diese Anweisung:

TRUNC (date, 'IW')

genau macht.

trunc(date,'IW') gibt den ersten Tag der Woche und ist nicht betroffen von der nls_territory Einstellungen finden Sie unter docs.oracle.com/cd/B19306_01/server.102/b14200/.... Nur der format-string TAG, DY und D betroffen sind.
äh, Nein. IW gibt den ersten Tag der ISO-Woche (Montag) und ist daher völlig unberührt von der nls_territory_settings.
Du hast Recht, meine erste Antwort war zu schnell 😀

InformationsquelleAutor Phate | 2015-09-16

Schreibe einen Kommentar