Prädikate sind die Bestandteile von Suchbedingungen.
Ein Prädikat besteht aus Operanden und Operatoren.
Entsprechend den Operatoren sind Prädikate in folgende Gruppen unterteilt:
Vergleich von zwei Zeilen
Zwei Zeilen werden mit einem Vergleichsoperator lexikografisch verglichen. Haben beide Zeilen nur eine Spalte, dann erhält man den gewöhnlichen Vergleich von zwei Werten. Als Vergleichsoperatoren sind zugelassen:=
gleich
<
kleiner
<=
kleiner oder gleich
>
größer
>=
größer oder gleich
<>
ungleich
Quantifizierter Vergleich (Vergleich mit den Zeilen einer Tabelle)
Der Wert einer Zeile wird mit den Zeilen einer Tabelle verglichen. Entweder wird bestimmt, ob der Vergleich für alle Zeilen der Tabelle zutrifft (ALL), oder ob er wenigstens für eine Zeile zutrifft (SOME/ANY).BETWEEN-Prädikat (Bereichsabfrage)
Es wird bestimmt, ob eine Zeile in einem Bereich (BETWEEN) liegt oder nicht (NOT BETWEEN), der durch eine obere und untere Grenze angegeben wird.CASTABLE-Prädikat (Konvertierbarkeit prüfen)
Es wird geprüft, ob ein Ausdruck in einen bestimmten Datentyp konvertiert werden kann. Mit dem CASTABLE-Prädikat können Sie die Ausführbarkeit eines entsprechenden CAST-Ausdruckes (siehe Abschnitt „CAST-Ausdruck“) schon vor seiner Ausführung prüfen und geeignet reagieren.IN-Prädikat (Elementabfrage)
Es wird bestimmt, ob eine Zeile in einer Tabelle vorkommt (IN) oder nicht (NOT IN).LIKE-Prädikat (einfacher Mustervergleich)
Es wird geprüft, ob ein alphanumerischer Wert oder ein National-Wert zu einem angegebenen Muster passt.LIKE_REGEX-Prädikat (Mustervergleich mit regulären Ausdrücken) Es wird geprüft, ob ein alphanumerischer Wert zu einem angegebenen regulären Ausdruck passt. Reguläre Ausdrücke sind genau definierte Suchmuster, die weit über die Möglichkeiten der Suchmuster im LIKE-Prädikat hinaus gehen. Reguläre Ausdrücke sind ein mächtiges Mittel, um große Datenbestände nach komplexen Suchausdrücken zu durchsuchen. Sie werden seit langem z.B. in der Programmiersprache Perl eingesetzt.
NULL-Prädikat (Vergleich auf NULL-Wert)
Es wird geprüft, ob eine Spalte, ein Parameter oder eine lokale Variable den NULL-Wert enthält.EXISTS-Prädikat (Existenzabfrage)
Es wird geprüft, ob die angegebene Ergebnistabelle nicht leer ist.
Für Vergleiche müssen die Datentypen der Operanden vergleichbar sein. Alle numerischen Werte sind mit numerischen Werten, alle alphanumerischen Zeichenketten sind mit alphanumerischen Zeichenketten, alle National-Zeichenketten sind mit National-Zeichenketten vergleichbar. Datum, Zeit und Zeitstempel sind jeweils nur mit Datum, Zeit bzw. Zeitstempel vergleichbar.