In MySQL muss das Schlüsselwort where zusammen mit der SELECT-Anweisung verwendet werden, um Abfragebedingungen anzugeben, d. h. Daten aus der Datentabelle bedingt abzufragen und zurückzugeben; die Syntax „SELECT {*|field columns name} FROM data table name“. WHERE Abfragebedingungen;".
Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.
Wenn Sie in MySQL Daten aus einer Datentabelle bedingt abfragen müssen, können Sie das Schlüsselwort WHERE verwenden, um Abfragebedingungen anzugeben.
Das Syntaxformat für die Verwendung des WHERE-Schlüsselworts lautet wie folgt:
SELECT {*|字段列名} FROM 数据表名 WHERE 查询条件;
Die Abfragebedingungen können sein:
Abfragebedingungen mit Vergleichsoperatoren und logischen Operatoren
Abfragebedingungen mit BETWEEN AND-Schlüsselwörtern
Abfrage Bedingungen mit dem Schlüsselwort IS NULL
Abfragebedingungen mit dem Schlüsselwort IN
Abfragebedingungen mit dem Schlüsselwort LIKE
Einzelne Bedingungsabfrageanweisung
Einzelne Bedingung bezieht sich auf Es gibt nur eine Abfragebedingung nach dem WHERE Stichwort.
Beispiel 1
Fragen Sie die Namen von Schülern mit einer Körpergröße von 170 cm in der Datentabelle tb_students_info ab. Die SQL-Anweisung und die laufenden Ergebnisse lauten wie folgt.
mysql> SELECT name,height FROM tb_students_info -> WHERE height=170; +-------+--------+ | name | height | +-------+--------+ | Susan | 170 | +-------+--------+ 1 row in set (0.17 sec)
Sie können sehen, dass der in den Abfrageergebnissen aufgezeichnete Wert des Höhenfelds gleich 170 ist. Wenn bei der Abfrage basierend auf den angegebenen Bedingungen in der Datentabelle keine Datensätze vorhanden sind, die den Abfragebedingungen entsprechen, meldet das System „Satz leeren (0,00 Sek.)“.
Beispiel 2
Fragen Sie die Namen von Schülern unter 22 Jahren in der Datentabelle tb_students_info ab. Die SQL-Anweisung und die laufenden Ergebnisse lauten wie folgt.
mysql> SELECT name,age FROM tb_students_info -> WHERE age<22; +------+------+ | name | age | +------+------+ | John | 21 | +------+------+ 1 row in set (0.05 sec)
Sie können sehen, dass der Wert des Altersfelds aller Datensätze in den Abfrageergebnissen weniger als 22 Jahre alt ist und Datensätze, die größer oder gleich 22 Jahre alt sind, nicht zurückgegeben werden.
Abfrageanweisungen mit mehreren Bedingungen
Nach dem Schlüsselwort WHERE können mehrere Abfragebedingungen stehen, wodurch die Abfrageergebnisse genauer werden können. Mehrere Abfragebedingungen werden durch logische Operatoren AND (&&), OR (||) oder XOR getrennt.
AND: Datensätze werden nur abgefragt, wenn sie alle Abfragebedingungen erfüllen.
ODER: Datensätze werden nur abgefragt, wenn sie eine Abfragebedingung erfüllen.
XOR: Datensätze werden nur abgefragt, wenn sie eine der Bedingungen erfüllen und die andere Bedingung nicht erfüllen.
Beispiel 3
Fragen Sie die Schülerinformationen ab, deren Alter größer als 21 und deren Körpergröße größer oder gleich 175 ist, in der Tabelle tb_students_info. Die SQL-Anweisung und die laufenden Ergebnisse lauten wie folgt.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 AND height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Henry | 23 | 185 | | Jim | 24 | 175 | | Thomas | 22 | 178 | +--------+------+--------+ 3 rows in set (0.00 sec)
Sie können sehen, dass das Altersfeld aller Datensätze in den Abfrageergebnissen größer als 21 und das Höhenfeld größer oder gleich 175 ist.
Beispiel 4
Fragen Sie die Schülerinformationen ab, deren Alter größer als 21 Jahre oder deren Körpergröße größer oder gleich 175 ist, in der Tabelle tb_students_info. Die SQL-Anweisung und die laufenden Ergebnisse lauten wie folgt.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 OR height>=175; +--------+------+--------+ | name | age | height | +--------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Henry | 23 | 185 | | Jane | 22 | 162 | | Jim | 24 | 175 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Thomas | 22 | 178 | | Tom | 23 | 165 | +--------+------+--------+ 9 rows in set (0.00 sec)
Sie können sehen, dass das Altersfeld aller Datensätze in den Abfrageergebnissen größer als 21 oder das Höhenfeld größer oder gleich 175 ist.
Beispiel 5
Fragen Sie in der Tabelle tb_students_info die Schülerinformationen ab, deren Alter über 21 Jahre und deren Körpergröße unter 175 liegt, sowie die Schülerinformationen, deren Alter unter 21 Jahre und deren Körpergröße über oder gleich 175 liegt Die Anweisungs- und Laufergebnisse lauten wie folgt.
mysql> SELECT name,age,height FROM tb_students_info -> WHERE age>21 XOR height>=175; +-------+------+--------+ | name | age | height | +-------+------+--------+ | Dany | 25 | 160 | | Green | 23 | 158 | | Jane | 22 | 162 | | Lily | 22 | 165 | | Susan | 23 | 170 | | Tom | 23 | 165 | +-------+------+--------+ 7 rows in set (0.00 sec)
Sie können sehen, dass das Altersfeld aller Datensätze in den Abfrageergebnissen größer als 21 und das Höhenfeld kleiner als 175 ist. Es gibt keine Datensätze in der Datentabelle tb_students_info, deren Altersfeld kleiner als 21 und deren Größenfeld größer oder gleich 175 ist.
OR, AND und XOR können zusammen verwendet werden, achten Sie jedoch bei der Verwendung auf die Priorität der Operatoren. Informationen zur Priorität von Operatoren in MySQL finden Sie im Abschnitt „Priorität von MySQL-Operatoren“.
Je mehr Abfragebedingungen vorhanden sind, desto weniger Datensätze werden abgerufen. Denn je mehr Bedingungen festgelegt werden, desto mehr Einschränkungen hat die Abfrageanweisung und desto weniger Datensätze können alle Bedingungen erfüllen. Um die abgefragten Datensätze genau Ihren Wünschen anzupassen, können Sie die Abfragebedingungen in der WHERE-Anweisung spezifischer festlegen.
【Verwandte Empfehlung: MySQL-Video-Tutorial】
Das obige ist der detaillierte Inhalt vonSo verwenden Sie das MySQL-Where-Schlüsselwort. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!