Operatoren

Ein Operator ähnelt einer Funktion, unterscheidet sich jedoch in den folgenden Punkten von ihr:
  • Ein Operator wird in der Regel durch ein Symbol dargestellt, nicht durch einen Namen.
  • Ein Operator verarbeitet in der Regel zwei Argumente.
  • Die Argumente eines Operators befinden sich in der Regel links und rechts vom Operatorsymbol.

In der folgenden Tabelle werden die SQL-Operatoren des Netezza Performance Server beschrieben.

Tabelle 1. Operatoren
Operatortyp Bediener Symbol    Beispiel
Binär arithmetisch Hinzufügung + 3+4 gibt 7 zurück.
Subtraktion - 3-4 gibt -1 zurück.
Multiplikation * 3*4 gibt 12 zurück.
Geschäftsbereich /
3/4 ergibt " 0 "
" 3/4.0 ergibt " 0.750000
Exponentialfunktion ^ 3^4 gibt 81 zurück.
** 3**4 gibt 81 zurück.
Modulo % 30%4 gibt 2 zurück.
Unär arithmetisch Und + +3 gibt 3 zurück.
Subtrahieren - -3 gibt -3 zurück.
Faktoriell ! 3! gibt 6 zurück.
Binärer Text Verketten || 'ab'||'ef' gibt 'abef' zurück.
Wie ~~ 'ab'~~'ef' gibt f (false) zurück.
Empfehlung 'ab' like 'ef' gibt f (false) zurück.
Nicht wie !~~ 'ab'!~~'ef' gibt t (true) zurück.
entspricht nicht 'ab' not like 'ef' gibt t (true) zurück.
Relationale Daten Gleich = 3=4 gibt f (false) zurück.
Ungleich <> 3<>4 gibt t (true) zurück.
!= 3!=4 gibt t (true) zurück.
Größer als > 3>4 gibt f (false) zurück.
Größer-gleich >= 3>=4 gibt f (false) zurück.
Kleiner als < 3<4 gibt t (true) zurück.
Kleiner-gleich <= 3<=4 gibt t (true) zurück.
Netezza Performance Server SQL folgt der von Postgres definierten Operatorpriorität. Die arithmetischen Standardoperatoren verwenden die Standardausführungspriorität:
  1. Exponentialfunktion
  2. Multiplikation, Division und Modulo
  3. Addition und Subtraktion
Operatoren derselben Vorrangstellung werden von links nach rechts ausgewertet. Sie können diese Vorrangstellung mit runden Klammern ändern. Beispielsweise sind die folgenden Anweisungen äquivalent:
5+7*30%4*2^3/2-1
(5+((((7*30)%4)*(2^3))/2))-1
In der folgenden Tabelle werden alle Operatoren nach Ausführungspriorität und die Assoziativität der einzelnen Operatoren aufgelistet.
Tabelle 2. Vorrangstellung für Operatoren
Bediener Assoziativität Beschreibung
. Links Tabellen- oder Spaltennamentrennzeichen
:: Links Datentypänderung (PostgreSQL-Erweiterung für Standard-SQL)
- Rechts Unäres Minus
^ Links Exponentialfunktion
* / % Links Multiplikation, Division, Modulo
+ - Links Addition, Subtraktion
IST Links IS TRUE, IS FALSE, IS UNKNOWN, IS NULL, IS NOT NULL
ISNULL Links Testen, ob null (PostgreSQL-Erweiterung für Standard-SQL)
NOTNULL Links Testen, ob nicht null (PostgreSQL-Erweiterung für Standard-SQL)
(andere native Operatoren) Links Alle anderen nativen Operatoren
IN Links Gruppenzugehörigkeit
ZWISCHEN Links Eindämmung
OVERLAPS Links Zeitintervallüberschneidung
~~ oder like Links Zeichenfolgenmusterabgleich
< <= > >= Links Kleiner als, kleiner-gleich, größer als, größer-gleich
= != <> Rechts Gleichheit, Zuweisung, Ungleichung
NICHT Rechts Logische Negation
UND Links Logische Konjunktion
ODER Links Logische Disjunktion