Ausdrücke
Ein Ausdruck gibt einen Wert an.
Bedingungsausdrücke können aus Vergleichsoperatoren und logischen Operatoren (AND, OR, NOT) bestehen.
In Vergleichsausdrücken können arithmetische Ausdrücke verwendet werden. Arithmetische Ausdrücke können aus arithmetischen Operationen und Funktionen, Pfadausdrücken mit numerischen Werten sowie numerischen Literalen und numerischen Eingabeparametern bestehen.
In Vergleichsausdrücken können verkettete Ausdrücke verwendet werden. Verkettete Ausdrücke können aus Zeichenfolgefunktionen, Pfadausdrücken mit Zeichenfolgewerten sowie Zeichenfolgeliteralen und Eingabeparametern in Form von Zeichenfolgen bestehen. Ein CMP-Feld vom Typ char wird als Zeichenfolge der Länge 1 behandelt.
Binäre Ausdrücke können in Vergleichsausdrücken verwendet werden und Pfadausdrücke, die in Java-Byte-Arrays (byte[]) aufgelöst werden, und Eingabeparameter des Typs Byte-Array (byte[]) enthalten.
Boolesche Ausdrücke können bei Vergleichen mit = und <> verwendet werden. Sie können aus Pfadausdrücken mit Booleschen Werten, den Schlüsselwörtern WAHR und FALSCH sowie Booleschen Eingabeparametern bestehen.
Referenzausdrücke können bei Vergleichen mit = und <> verwendet werden. Sie können aus Pfadausdrücken mit cmr-Feldern, einer Identifikationsvariable sowie einem Eingabeparameter bestehen, dessen Typ eine EJB-Referenz ist.
Für die Arbeit mit Datum-Zeit-Typen werden vier verschiedene Typen von Ausdrücken unterstützt. Für die Portierbarkeit sollte der Typ java.util.Calendar verwendet werden. Datums-, Zeit- und Zeitmarkenausdrücke im Stil von DB2 werden unterstützt, wenn der Datenspeicher DB2 ist und das CMP-Feld vom Typ java.util.Date, java.sql.Date, java.sql.Time oder java.sql.Timestamp ist. Bei DB2 UDB tritt möglicherweise, wenn Sie das Objekt java.sql.Timestamp.ojbect verwenden, ein Syntaxfehler auf. Sie müssen die Syntax TIMESTAMP 'jjjj-mm-tt hh:mm:ss.nnnn' verwenden.
Ein Kalender-Typ kann mit einem anderen Kalender-Typ verglichen werden, mit einem exakten numerischen Literal oder mit einem Eingabeparameter vom Typ Long, dessen Wert ein standardmäßiger Java-Long-Millisekundenwert ist.
SELECT OBJECT(e) FROM EmpBean e WHERE e.birthDate < 631180800232
In Vergleichsausdrücken können Datumsausdrücke verwendet werden. Datumsausdrücke können aus den Operatoren + - , Datumsdauerausdrücken und Datumsfunktionen, Pfadausdrücken mit Datumswerten sowie Zeichenfolgedarstellungen von Datumswerten und Datumseingabeparametern bestehen.
In Vergleichsausdrücken können Zeitausdrücke verwendet werden. Zeitausdrücke können aus den Operatoren + - , Zeitdauerausdrücken und Zeitfunktionen, Pfadausdrücken mit Zeitwerten sowie Zeichenfolgedarstellungen von Zeitwerten und Zeiteingabeparametern bestehen.
In Vergleichsausdrücken können Zeitmarkenausdrücke verwendet werden. Zeitmarkenausdrücke können aus den Operatoren + - , Zeitmarkendauerausdrücken und Zeitmarkenfunktionen, Pfadausdrücke mit Zeitmarkenwerten sowie Zeichenfolgedarstellungen von Zeitmarkenwerten und Zeitmarkeneingabeparametern bestehen.
Für die Definition von Prioritäten innerhalb der Ausdrücke ist die Verwendung der üblichen Klammern ( ) vorgesehen.
- Navigationsoperator ( . )
- Arithmetische Operatoren in der Reihenfolge ihrer Priorität:
- + - unitär
- * / multiplizieren, dividieren
- + - addieren, subtrahieren
- Vergleichsoperatoren: =, >, <, >=, <=, <>(not equal)
- Logischer Operator NOT
- Logischer Operator AND
- Logischer Operator OR