Im Folgenden finden Sie einige Beispiele des ESQL-Codes, den Sie zur Bearbeitung der Datum/Zeitwerte mit numerischen Operatoren codieren können.
DATE '2000-03-29' + INTERVAL '1' MONTH
TIMESTAMP '1999-12-31 23:59:59' + INTERVAL '1' SECOND
Im folgenden Beispiel wird gezeigt, wie das Datum des Rentenbeginns durch das Hinzufügen des Rentenalters zum Geburtsdatum berechnet wird.
DECLARE retAge CHARACTER '65';
DECLARE birthDate DATE DATE '1953-06-01';
SET OutputRoot.XML.Test.retirementDate = birthDate + CAST(retAge AS INTERVAL YEAR);
Der Begriff DATE wird im Beispiel bewusst wiederholt. Beim ersten Mal wird durch DATE der Datentyp der deklarierten Variablen (birthDate) angegeben. Beim zweiten Mal wird die gleiche Variable mit den konstanten Zeichenfolge initialisiert, die in einfachen Anführungszeichen als DATE eingefügt ist.
INTERVAL '1-06' YEAR TO MONTH + INTERVAL '20' DAY
Das Intervall-Qualifikationsmerkmal des resultierenden Intervalls kann alle Felder umfassen, die in den beiden Operandenintervallen vorhanden sind. Beispiel:
INTERVAL '2 01' DAY TO HOUR + INTERVAL '123:59' MINUTE TO SECOND
ergibt ein Intervall mit dem Qualifikationsmerkmal DAY TO SECOND, da mindestens einer der Operandenwerte sowohl das Feld für 'Tag' als auch das Feld für 'Sekunde' enthält.
(CURRENT_DATE - DATE '1776-07-04') DAY
gibt die Anzahl der Tage zurück, die seit dem 4. Juli 1776 verstrichen sind, während
(CURRENT_TIME - TIME '00:00:00') MINUTE TO SECOND
das Alter des Tages in Minuten und Sekunden zurückgibt.
INTERVAL '2:30' MINUTE TO SECOND / 4