SQL IN Operator: Eine Anleitung
Der SQL IN-Operator wird in dieser Anleitung zusammen mit der WHERE-Klausel verwendet, um mehrere Werte als Teil der WHERE-Klausel anzugeben.
1. SQL IN
Der SQL IN-Operator ist fast wie das Vorhandensein mehrerer ODER-Operatoren für dieselbe Spalte. Lassen Sie uns im Detail über den SQL IN-Operator sprechen. Es gibt zwei Möglichkeiten, den IN-Operator zu definieren. Wir werden beide Möglichkeiten unten im Detail besprechen.
1.1) Mehrere Werte als Teil von IN
Syntax:
SELECT Spalte(n) FROM tabelle_name WHERE spalte IN (wert1, wert2, ... wertN);
Mit der oben genannten Syntax können wir mehrere Werte als Teil des IN-Operators definieren. Wir werden die oben genannte Syntax durch einige Beispiele detaillierter verstehen. Betrachten wir die folgende Schülertabelle zu Beispielzwecken.
| RollNr | SchülerName | SchülerGeschlecht | SchülerAlter | SchülerProzent |
|---|---|---|---|---|
| 1 | George | M | 14 | 85 |
| 2 | Monica | F | 12 | 88 |
| 3 | Jessica | F | 13 | 84 |
| 4 | Tom | M | 11 | 78 |
Szenario: Ermitteln Sie den Prozentsatz der Schüler, deren Alter 12 oder 13 ist. Abfrage:
SELECT SchülerProzent FROM Schüler WHERE SchülerAlter IN ('12', '13');
Ausgabe:
| SchülerProzent |
|---|
| 88 |
| 84 |
1.2) Select-Abfrage als Teil von IN
Syntax:
SELECT Spalte(n) FROM tabelle_name WHERE spalte IN (SELECT-Anweisung);
Mit der oben genannten Syntax können wir die SQL SELECT-Anweisung verwenden, um Werte als Teil des IN-Operators anzugeben. Wir werden die oben genannte Syntax durch einige Beispiele detaillierter verstehen. Betrachten wir die folgenden Produkt- und Lieferantentabellen zu Beispielzwecken.
PRODUKT-Tabelle
| ProduktId | ProduktName | ProduktPreis |
|---|---|---|
| 1 | Keks | 10 |
| 2 | Käse | 11 |
| 3 | Schokolade | 15 |
| 4 | Marmelade | 20 |
LIEFERANTEN-Tabelle
| ProduktId | ProduktName | LieferantenName |
|---|---|---|
| 1 | Keks | ABC |
| 2 | Käse | XYZ |
| 3 | Schokolade | ABC |
| 4 | Marmelade | XDE |
Szenario: Ermitteln Sie den Preis des Produkts, dessen Lieferant ABC ist. Abfrage:
SELECT ProduktPreis FROM Produkt WHERE ProduktName IN (SELECT ProduktName FROM Lieferant WHERE LieferantenName = "ABC");
Ausgabe:
| ProduktPreis |
|---|
| 10 |
| 15 |
1.3) Verschachteltes SQL IN
Wir können auch IN innerhalb eines anderen IN-Operators verwenden. Um es besser zu verstehen, betrachten wir das nachstehende Szenario.
Szenario: Ermitteln Sie den Preis des Produkts, dessen Lieferant ABC und XDE ist. Abfrage:
SELECT ProduktPreis FROM Produkt WHERE ProduktName IN (SELECT ProduktName FROM Lieferant WHERE LieferantenName IN ( "ABC", "XDE" ));
Ausgabe:
| ProduktPreis |
|---|
| 10 |
| 15 |
| 20 |
SQL IN-Operator
Der SQL IN-Operator wird zusammen mit der WHERE-Klausel verwendet, um mehrere Werte als Teil der WHERE-Klausel anzugeben.
1. SQL IN
Der SQL IN-Operator ist fast wie das Vorhandensein mehrerer ODER-Operatoren für dieselbe Spalte. Lassen Sie uns im Detail über den SQL IN-Operator sprechen. Es gibt zwei Möglichkeiten, den IN-Operator zu definieren. Wir werden beide Möglichkeiten unten im Detail besprechen.
1.1) Mehrere Werte als Teil von IN
Syntax:
SELECT Spalte(n) FROM tabelle_name WHERE spalte IN (wert1, wert2, ... wertN);
Mit der oben genannten Syntax können wir mehrere Werte als Teil des IN-Operators definieren. Wir werden die oben genannte Syntax durch einige Beispiele detaillierter verstehen. Betrachten wir die folgende Schülertabelle zu Beispielzwecken.
| RollNr | SchülerName | SchülerGeschlecht | SchülerAlter | SchülerProzent |
|---|---|---|---|---|
| 1 | George | M | 14 | 85 |
| 2 | Monica | F | 12 | 88 |
| 3 | Jessica | F | 13 | 84 |
| 4 | Tom | M | 11 | 78 |
Szenario: Ermitteln Sie den Prozentsatz der Schüler, deren Alter 12 oder 13 ist. Abfrage:
SELECT SchülerProzent FROM Schüler WHERE SchülerAlter IN ('12', '13');
Ausgabe:
| SchülerProzent |
|---|
| 88 |
| 84 |
1.2) Select-Abfrage als Teil von IN
Syntax:
SELECT Spalte(n) FROM tabelle_name WHERE spalte IN (SELECT-Anweisung);
Mit der oben genannten Syntax können wir die SQL SELECT-Anweisung verwenden, um Werte als Teil des IN-Operators anzugeben. Wir werden die oben genannte Syntax durch einige Beispiele detaillierter verstehen. Betrachten wir die folgenden Produkt- und Lieferantentabellen zu Beispielzwecken.
PRODUKT-Tabelle
| ProduktId | ProduktName | ProduktPreis |
|---|---|---|
| 1 | Keks | 10 |
| 2 | Käse | 11 |
| 3 | Schokolade | 15 |
| 4 | Marmelade | 20 |
LIEFERANTEN-Tabelle
| ProduktId | ProduktName | LieferantenName |
|---|---|---|
| 1 | Keks | ABC |
| 2 | Käse | XYZ |
| 3 | Schokolade | ABC |
| 4 | Marmelade | XDE |
Szenario: Ermitteln Sie den Preis des Produkts, dessen Lieferant ABC ist. Abfrage:
SELECT ProduktPreis FROM Produkt WHERE ProduktName IN (SELECT ProduktName FROM Lieferant WHERE LieferantenName = "ABC");
Ausgabe:
| ProduktPreis |
|---|
| 10 |
| 15 |
1.3) Verschachteltes SQL IN
Wir können auch IN innerhalb eines anderen IN-Operators verwenden. Um es besser zu verstehen, betrachten wir das nachstehende Szenario.
Szenario: Ermitteln Sie den Preis des Produkts, dessen Lieferant ABC und XDE ist. Abfrage:
SELECT ProduktPreis FROM Produkt WHERE ProduktName IN (SELECT ProduktName FROM Lieferant WHERE LieferantenName IN ( "ABC", "XDE" ));
Ausgabe:
| ProduktPreis |
|---|
| 10 |
| 15 |
| 20 |
2. SQL NOT IN
Der SQL NOT IN-Operator wird verwendet, um das Ergebnis zu filtern, wenn die Werte, die als Teil des IN-Operators angegeben sind, nicht erfüllt werden. Lassen Sie uns im Detail über den SQL NOT IN-Operator sprechen.
Syntax:
SELECT Spalte(n) FROM tabelle_name WHERE Spalte NOT IN (wert1, wert2... wertN);
In der obigen Syntax werden die Werte, die als Teil der IN-Klausel nicht erfüllt werden, für das Ergebnis berücksichtigt. Betrachten wir die zuvor definierte Schülertabelle zu Beispielzwecken.
Szenario: Ermitteln Sie den Prozentsatz der Schüler, deren Alter nicht 12 oder 13 ist. Abfrage:
SELECT SchülerProzent FROM Schüler WHERE SchülerAlter NOT IN ('12', '13');


