

 Amazon Redshift unterstützt UDFs ab Patch 198 nicht mehr die Erstellung von neuem Python. Das bestehende Python UDFs wird bis zum 30. Juni 2026 weiterhin funktionieren. Weitere Informationen finden Sie im [Blog-Posting](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Logische Bedingungen
<a name="r_logical_condition"></a>

Logische Bedingungen führen die Ergebnisse zweier Bedingungen zu einem Ergebnis zusammen. Alle logischen Bedingungen sind binäre Operatoren mit einem Booleschen Rückgabewert. 

## Syntax
<a name="r_logical_condition-synopsis"></a>

```
expression
{ AND | OR }
expression
NOT expression
```

Bei logischen Bedingungen wird eine dreiwertige Boolesche Logik verwendet, bei der der Wert „Null“ als „unbekannt“ interpretiert wird. Die folgende Tabelle beschreibt die Ergebnisse von logischen Bedingungen, wobei `E1` und `E2` Ausdrücke sind:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/redshift/latest/dg/r_logical_condition.html)

Der Operator NOT wird vor AND ausgewertet, und AND vor OR. Diese Auswertungsreihenfolge kann durch Klammerung außer Kraft gesetzt werden. 

### Beispiele
<a name="r_logical_condition-examples"></a>

In dem folgenden Beispiel werden USERID und USERNAME aus der Tabelle USERS zurückgegeben, die sowohl Las Vegas als auch Sport mögen: 

```
select userid, username from users
where likevegas = 1 and likesports = 1
order by userid;

userid | username
--------+----------
1 | JSG99FHE
67 | TWU10MZT
87 | DUF19VXU
92 | HYP36WEQ
109 | FPL38HZK
120 | DMJ24GUZ
123 | QZR22XGQ
130 | ZQC82ALK
133 | LBN45WCH
144 | UCX04JKN
165 | TEY68OEB
169 | AYQ83HGO
184 | TVX65AZX
...
(2128 rows)
```

In dem nächsten Beispiel werden USERID und USERNAME aus der Tabelle USERS zurückgegeben, die Las Vegas oder Sport mögen: Diese Abfrage gibt alle Ergebnisse des vorangehenden Beispiels, zuzüglich der Benutzer, die Las Vegas mögen, zuzüglich der Benutzer, die Sport mögen. 

```
select userid, username from users
where likevegas = 1 or likesports = 1
order by userid;

userid | username
--------+----------
1 | JSG99FHE
2 | PGL08LJI
3 | IFT66TXU
5 | AEB55QTM
6 | NDQ15VBM
9 | MSD36KVR
10 | WKW41AIW
13 | QTF33MCG
15 | OWU78MTR
16 | ZMG93CDD
22 | RHT62AGI
27 | KOY02CVE
29 | HUH27PKK
...
(18968 rows)
```

In der folgenden Abfrage wird die Bedingung `OR` in Klammern gesetzt, um alle Veranstaltungen zu suchen, die in New York oder in Kalifornien stattfinden, und bei denen Macbeth gegeben wird: 

```
select distinct venuename, venuecity
from venue join event on venue.venueid=event.venueid
where (venuestate = 'NY' or venuestate = 'CA') and eventname='Macbeth'
order by 2,1;

venuename                |   venuecity
----------------------------------------+---------------
Geffen Playhouse                       | Los Angeles
Greek Theatre                          | Los Angeles
Royce Hall                             | Los Angeles
American Airlines Theatre              | New York City
August Wilson Theatre                  | New York City
Belasco Theatre                        | New York City
Bernard B. Jacobs Theatre              | New York City
...
```

Wenn die Klammerung in dem vorangehenden Beispiel entfernt wird, ändert sich die der bei der Auswertung ermittelte Wert und damit das Ergebnis der Abfrage. 

In dem folgenden Beispiel wird der Operator `NOT` verwendet. 

```
select * from category
where not catid=1
order by 1;

catid | catgroup |  catname  |                  catdesc
-------+----------+-----------+--------------------------------------------
2 | Sports   | NHL       | National Hockey League
3 | Sports   | NFL       | National Football League
4 | Sports   | NBA       | National Basketball Association
5 | Sports   | MLS       | Major League Soccer
...
```

Im folgenden Beispiel wird eine `NOT`-Bedingung verwendet, gefolgt von einer `AND`-Bedingung: 

```
select * from category
where (not catid=1) and catgroup='Sports'
order by catid;

catid | catgroup | catname |             catdesc
-------+----------+---------+---------------------------------
2 | Sports   | NHL     | National Hockey League
3 | Sports   | NFL     | National Football League
4 | Sports   | NBA     | National Basketball Association
5 | Sports   | MLS     | Major League Soccer
(4 rows)
```