SQL IN Operator
Der SQL IN Operator wird in SQL-Where Bedingungen eingebaut, um mehrere Abfrageergebnisse in einer SQL-Anweisung zu bündeln. Damit kann der IN Operator leicht mehrere OR Operatoren ersetzen und vereinfacht damit die Struktur von komplexen OR-Bedingungen.Der SQL IN Operator kann auch Ergebnismengen mit NOT ausschließen. Um bestimmte Ergebnismengen auszuschließen, muss das Wort NOT hinzugefügt werden.
SQL IN Syntax
Die SQL Syntax einer Select-Abfrage mit WHERE und IN ist wie folgt aufgebaut:
SELECT Spaltenname FROM Tabellenname WHERE Spaltenname IN ('Wert1','Wert2')
SQL IN Beispiel
Gegeben sei eine Tabelle namens "Mitarbeiter":
Nachname | Vorname | Gehalt | Geschlecht |
Reinhardt | Melinda | 2435 | w |
Schönbaum | Jakob | 2090 | m |
Wegner | Lutz | 3410 | m |
Schulz | Dorothea | 1201 | w |
Richter | Heiko | 3675 | m |
Nun möchten wir alle Mitarbeiter mit den folgenden Vorname ermitteln: Heiko, Dorothea und Melinda:
Das SQL-Statement mit der IN-Bedingung würde wie folgt aussehen:
SELECT NACHNAME,VORNAME,GEHALT,GESCHLECHT FROM MITARBEITER WHERE VORNAME IN ('Heiko','Dorothea','Melinda')
Das Ergebnis würde wie folgt aussehen:
Nachname | Vorname | Gehalt | Geschlecht |
Reinhardt | Melinda | 2435 | w |
Schulz | Dorothea | 1201 | w |
Richter | Heiko | 3675 | m |
Wichtig: In einer SQL Select Abfrage kann der IN Operator nicht mit Wildcards gefüllt werden wie beim LIKE Operator.