02.04.2013 Aufrufe

iNN - eNews - SSS-Software

iNN - eNews - SSS-Software

iNN - eNews - SSS-Software

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3 Tekki-Corner<br />

3.1 Nützliche SQL Skalare Funktionen - Teil II<br />

Datums- und Zeitrechnung<br />

by Birgitta Hauser<br />

Datums- und Zeitrechnung ist und wird immer ein Thema bleiben. In RPG wurden<br />

in Release V5R1M0 einige neue Built-in-Funktionen zur Datums- und Zeitrechnung,<br />

die z.T. bestehende Operation Codes ersetzten, eingeführt. Seither ist es in RPG auf<br />

diesem Gebiet ruhig geblieben. Anders in SQL! Mit jedem der letzten Release wurden<br />

neue und mächtige skalare Funktionen zur Datums- und Zeitrechnung eingeführt. Für<br />

viele dieser skalaren Funktionen gibt es in RPG nichts vergleichbares. Sicher man kann<br />

sich die benötigten Funktionen selber zusammenbasteln, aber warum nicht einfach die<br />

vorhandenen SQL skalaren Funktionen verwenden? In diesem Artikel werden einige der<br />

wichtigsten SQL skalaren Funktionen zur Ermittlung von Datums- und Zeit-Anteilen aus<br />

einem vorgegebenen Datum, einer Zeit oder einer Zeitmarke erklärt.<br />

Ermitteln Datums- oder Zeit-Anteil<br />

RPG wie auch SQL liefern eine Reihe von Built-in bzw. skalaren Funktionen, über die es<br />

möglich ist aus einem vorgegeben Datum oder einer Zeitmarke den laufenden Tag im Monat,<br />

den numerischen Monat selbst und das Jahr bzw. aus einer vorgegebenen Zeit oder Zeitmarke<br />

den Stunden-, Minuten- oder Sekunden-Anteil zu ermitteln.<br />

In RPG steht zu diesem Zweck der Operation Code EXTRCT oder die Built-in-Function<br />

%SUBDT() zur Verfügung. Sowohl bei dem Operation Code als auch bei der Built-in-Funktion<br />

muss jeweils die Datums- oder Zeit-Einheit, also Jahr (*YEARS bzw. *Y), Monat (*MONTHS<br />

bzw. *M), Tag (*DAYS bzw. D), Stunde (*HOURS bzw. *H), Minute (*MINUTES bzw. *MN),<br />

Sekunde (*SECONDS bzw. *S) oder Mikrosekunde (*MSECONDS bzw. *MS) angegeben<br />

werden.<br />

SQL bietet dagegen für jede einzelne Datums- bzw. Zeit-Einheit eine eigene skalare Funktion:<br />

www.inn-online.de < Seite > Seite: 46

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!