Durch die Verwendung des Schlüsselworts IN können wir Unterabfragen zum Filtern der Daten verwenden. Dies liegt daran, dass wir Abfrageergebnisse wie eine Werteliste verwenden können, indem wir den IN-Operator verwenden, um eine Abfrage basierend auf den Ergebnissen einer anderen Abfrage zu filtern. Unterabfragen werden in Klammern nach dem Schlüsselwort IN angezeigt.
Wir veranschaulichen dieses Beispiel anhand von Daten aus der folgenden Tabelle: -
mysql> Select * from Customers; +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 | Gaurav | | 4 | Virender | +-------------+----------+ 4 rows in set (0.00 sec) mysql> Select * from Reservations; +------+-------------+------------+ | ID | Customer_id | Day | +------+-------------+------------+ | 1 | 1 | 2017-12-30 | | 2 | 2 | 2017-12-28 | | 3 | 2 | 2017-12-29 | | 4 | 1 | 2017-12-25 | | 5 | 3 | 2017-12-26 | +------+-------------+------------+ 5 rows in set (0.00 sec)
Die folgende Abfrage verwendet den Operator „IN“ mit einer Unterabfrage und gibt das Ergebnis zurück, nachdem alle von der Unterabfrage zurückgegebenen Werte verglichen wurden.
mysql> SELECT * from customers WHERE customer_id IN (Select customer_id from reservations); +-------------+----------+ | Customer_Id | Name | +-------------+----------+ | 1 | Rahul | | 2 | Yashpal | | 3 | Gaurav | +-------------+----------+ 3 rows in set (0.00 sec)
Das obige ist der detaillierte Inhalt vonWie filtere ich Daten mithilfe einer MySQL-Unterabfrage?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!