Datenbanken

SQL Selektion und Sortierung

WHERE, Vergleichsoperatoren, AND, OR, NOT, BETWEEN, IN, LIKE, NULL und ORDER BY.

SQL Selektion und Sortierung

Mit Selektion wählt man bestimmte Zeilen aus einer Tabelle aus.

Die wichtigste Klausel dafür ist WHERE.

Grundform

SELECT spalten
FROM tabelle
WHERE suchbedingung;

Beispiel:

SELECT *
FROM emp
WHERE deptno = 30;

Vergleichsoperatoren

OperatorBedeutung
=gleich
>größer
<kleiner
>=größer oder gleich
<=kleiner oder gleich
<> oder !=ungleich

Beispiel:

SELECT dname, deptno
FROM dept
WHERE deptno > 20;

AND

AND verknüpft Bedingungen. Alle Bedingungen müssen erfüllt sein.

SELECT ename, sal, deptno
FROM emp
WHERE job = 'SALESMAN'
  AND deptno = 30
  AND sal >= 1500;

OR

OR bedeutet: Mindestens eine Bedingung muss erfüllt sein.

SELECT ename, job, sal
FROM emp
WHERE job = 'MANAGER'
   OR sal > 3000;

NOT

NOT negiert eine Bedingung.

SELECT *
FROM emp
WHERE NOT (job = 'MANAGER' OR job = 'CLERK')
  AND deptno = 10;

Klammern sind wichtig, damit die Logik eindeutig bleibt.

BETWEEN

BETWEEN prüft einen Bereich.

SELECT ename, job, sal
FROM emp
WHERE sal BETWEEN 1200 AND 1300;

Auch möglich:

WHERE sal NOT BETWEEN 1200 AND 1300

IN

IN prüft, ob ein Wert in einer Liste enthalten ist.

SELECT ename, job, deptno
FROM emp
WHERE job NOT IN ('CLERK', 'ANALYST', 'SALESMAN');

LIKE

LIKE sucht mit Mustern.

MusterBedeutung
%beliebig viele Zeichen
_genau ein Zeichen

Beispiele:

SELECT ename
FROM emp
WHERE ename LIKE 'M%';
SELECT ename
FROM emp
WHERE ename LIKE 'ALL_N';

NULL

NULL bedeutet: kein Wert vorhanden oder unbekannt.

Wichtig: NULL wird nicht mit = geprüft.

Richtig:

SELECT ename, sal, comm, job
FROM emp
WHERE comm IS NULL;

Oder:

WHERE comm IS NOT NULL

Sortieren mit ORDER BY

Aufsteigend:

SELECT ename, sal
FROM emp
WHERE deptno = 30
ORDER BY sal;

Absteigend:

SELECT ename, sal
FROM emp
WHERE deptno = 30
ORDER BY sal DESC;

Mehrere Sortierkriterien:

SELECT ename, job, sal
FROM emp
ORDER BY job, sal DESC;

DISTINCT

DISTINCT entfernt doppelte Ergebniswerte.

SELECT DISTINCT job AS beruf
FROM emp;

Typische Fehler

  • = statt IS NULL verwenden
  • AND und OR ohne Klammern mischen
  • Textwerte ohne Anführungszeichen schreiben
  • LIKE ohne Platzhalter verwenden
  • ORDER BY vor WHERE schreiben

Merksatz

WHERE bestimmt, welche Zeilen kommen. ORDER BY bestimmt, in welcher Reihenfolge sie angezeigt werden.

Zuletzt aktualisiert: 6. Juni 2026