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.
| 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:
- Exponentialfunktion
- Multiplikation, Division und Modulo
- Addition und Subtraktion
5+7*30%4*2^3/2-1
(5+((((7*30)%4)*(2^3))/2))-1In der folgenden Tabelle werden alle Operatoren nach Ausführungspriorität und die Assoziativität der einzelnen Operatoren aufgelistet.
| 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 |