## Negative Bedingungen: NOT

Um das Gegenteil einer Bedingung zu erreichen, müssen Sie das Schlüsselwort NOT vor den entsprechenden Ausdruck stellen. Wollen Sie einen zusammengesetzten Ausdruck negieren, so müssen Sie diesen in Klammern setzen.

### Voraussetzungen

Sie benötigen die Demo-Daten für das SQL-Tutorial.

Starten Sie das Query Tool SQL Studio als Datenbankadministrator MONA mit dem Kennwort RED und melden Sie sich an die Demo-Datenbankinstanz DEMODB an.

### Negieren eines Ausdrucks

SELECT name, state
FROM hotel.city
WHERE NOT (state = 'CA' OR state = 'WA' OR state = 'IL' OR state = 'NY')

Auswahl der Orte, die nicht in den Staaten CA, WA, IL und NY liegen

Ergebnis

NAME | STATE
Silver Spring | MD
Daytona Beach | FL
Deerfield Beach | FL
Clearwater | FL
Cincinnati | OH
Detroit | MI
New Orleans | LA
Dallas | TX
Portland | OR

Siehe auch:

SQL-Referenzhandbuch, Suchbedingung (search_condition)

Bei Verwenden der Prädikate BETWEEN, IN, LIKE und NULL kann das NOT vor dem Prädikat oder unmittelbar vor dem entsprechenden Schlüsselwort (BETWEEN, IN, LIKE, NULL) stehen.

### NOT BETWEEN

SELECT name, state
FROM hotel.city
WHERE NOT (state BETWEEN 'CA' AND 'NY')
oder
SELECT name, state
FROM hotel.city
WHERE state NOT BETWEEN 'CA' AND 'NY'

Auswahl der Orte, die nicht in den Staaten CA, FL, IL, LA, MD, MI und NY liegen

Ergebnis

NAME | STATE
Seattle | WA
Seattle | WA
Seattle | WA
Cincinnati | OH
Dallas | TX
Portland | OR

Siehe auch:

SQL-Referenzhandbuch, BETWEEN-Prädikat (between_predicate)

### NOT IN

SELECT name, state
FROM hotel.city
WHERE NOT (state IN ('CA', 'IL', 'NY'))
oder
SELECT name, state
FROM hotel.city
WHERE state NOT IN ('CA', 'IL', 'NY')

Auswahl der Orte, die nicht in den Staaten CA, IL und NY liegen

Ergebnis

NAME | STATE
Seattle | WA
Seattle | WA
Seattle | WA
Silver Spring | MD
Daytona Beach | FL
Deerfield Beach | FL
Clearwater | FL
Cincinnati | OH
Detroit | MI
New Orleans | LA
Dallas | TX
Portland | OR

Siehe auch:

SQL-Referenzhandbuch, IN-Prädikat (in_predicate)

### NOT LIKE

SELECT firstname, name
FROM hotel.customer
WHERE NOT (firstname LIKE '%e%')
oder
SELECT firstname, name
FROM hotel.customer
WHERE firstname NOT LIKE '%e%'

Auswahl der Kunden, deren Vorname kein e enthält

Ergebnis

FIRSTNAME | NAME
Mary | Griffith
Martin | Randolph
Sally | Smith
Rita | Doe
Frank | Miller
Susan | Baker
Antony | Jenkins

Siehe auch:

SQL-Referenzhandbuch, LIKE-Prädikat (like_predicate)

### NOT NULL

SELECT firstname, name
FROM hotel.customer
WHERE NOT (firstname IS NULL)
oder
SELECT firstname, name
FROM hotel.customer
WHERE firstname IS NOT NULL

Auswahl der Kunden, die einen Vornamen haben, also keine Firmen sind

Ergebnis

FIRSTNAME | NAME
Jenny | Porter
Peter | Brown
Rose | Brian
Mary | Griffith
Martin | Randolph
Sally | Smith
Mike | Jackson
Rita | Doe
George | Howe
Frank | Miller
Susan | Baker
Joseph | Peters
Antony | Jenkins

Siehe auch:

SQL-Referenzhandbuch, NULL-Prädikat (null_predicate)

SQL-Referenzhandbuch, Prädikat (predicate)

Weitere Beispiele zur Datenanfrage