Katalog artykułów
Baza danych MySQLJak używać instrukcji Where? gdzie klauzula wielokrotna składnia warunkowa
MySQL klauzula GDZIE
Wiemy, jak używać instrukcji SQL SELECT do odczytywania danych z tabeli MySQL.
Aby warunkowo wybrać dane z tabeli, dodaj klauzulę WHERE do instrukcji SELECT.
gramatyka
Poniżej znajduje się ogólna składnia instrukcji SQL SELECT do odczytywania danych z tabeli danych przy użyciu klauzuli WHERE:
SELECT field1, field2,...fieldN FROM table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....
- W zapytaniu możesz użyć jednej lub więcej tabel, używając przecinków między tabelami, Podziel i użyj instrukcji WHERE, aby ustawić warunki zapytania.
- W klauzuli WHERE można określić dowolny warunek.
- Możesz określić jeden lub więcej warunków, używając AND lub OR.
- Klauzula WHERE może być również używana z poleceniami SQL DELETE lub UPDATE.
- Klauzula WHERE jest podobna do warunku if w języku programowania, odczytując określone dane zgodnie z wartością pola w tabeli MySQL.
Poniżej znajduje się lista operatorów, których można użyć w klauzuli WHERE.
Przykłady w poniższej tabeli zakładają, że A to 10, a B to 20
| operator | opis | Instancja |
|---|---|---|
| = | Znak równości, sprawdza, czy dwie wartości są równe i zwraca prawdę, jeśli są równe | (A = B) zwraca fałsz. |
| <>, != | Nierówne, sprawdź, czy obie wartości są równe, jeśli nie, zwróć prawda | (A != B) zwraca prawdę. |
| > | Znak Większy, sprawdź, czy wartość po lewej stronie jest większa od wartości po prawej stronie, jeśli wartość po lewej stronie jest większa od wartości po prawej, zwróć true | (A > B) zwraca fałsz. |
| < | Mniej niż znak, sprawdź, czy wartość po lewej stronie jest mniejsza niż wartość po prawej, jeśli wartość po lewej jest mniejsza niż wartość po prawej, zwróć true | (A < B) zwraca prawdę. |
| >= | Znak większy lub równy, sprawdź, czy wartość po lewej stronie jest większa lub równa wartości po prawej stronie, jeśli wartość po lewej stronie jest większa lub równa wartości po prawej stronie, zwróć true | (A >= B) zwraca fałsz. |
| <= | Mniejszy lub znak równości, sprawdź, czy wartość po lewej stronie jest mniejsza lub równa wartości po prawej stronie, jeśli wartość po lewej stronie jest mniejsza lub równa wartości po prawej, zwróć true | (A <= B) zwraca prawdę. |
Klauzula WHERE jest bardzo przydatna, jeśli chcemy odczytać określone dane z tabeli danych MySQL.
Użycie klucza podstawowego jako zapytania warunkowego w klauzuli WHERE jest bardzo szybkie.
Jeśli podane kryteria nie zawierają pasujących rekordów w tabeli, zapytanie nie zwraca żadnych danych.
odczytaj dane z wiersza polecenia
Użyjemy klauzuli WHERE w instrukcji SQL SELECT, aby odczytać dane z tabeli danych MySQL chenweiliang_tbl:
Instancja
Poniższy przykład odczyta wszystkie rekordy w tabeli chenweiliang_tbl, gdzie wartość pola chenweiliang_author to Sanjay:
SQL SELECT WHERE klauzula
Porównania łańcuchów w klauzuli WHERE MySQL nie uwzględniają wielkości liter.Możesz użyć słowa kluczowego BINARY, aby określić, że porównania ciągów w klauzuli WHERE uwzględniają wielkość liter.
Poniższy przykład:
BINARNE słowo kluczowe
mysql> SELECT * from chenweiliang_tbl WHERE BINARY chenweiliang_author='chenweiliang.com'; Empty set (0.01 sec) mysql> SELECT * from chenweiliang_tbl WHERE BINARY chenweiliang_author='chenweiliang.com'; +-----------+---------------+---------------+-----------------+ | chenweiliang_id | chenweiliang_title | chenweiliang_author | submission_date | +-----------+---------------+---------------+-----------------+ | 3 | JAVA 教程 | chenweiliang.com | 2016-05-06 | | 4 | 学习 Python | chenweiliang.com | 2016-03-06 | +-----------+---------------+---------------+-----------------+ 2 rows in set (0.01 sec)
użyty w przykładzie BINARY słowo kluczowe, rozróżniana jest wielkość liter, więc chenweiliang_author='chenweiliang.com' Warunkiem zapytania jest brak danych.
Czytaj dane za pomocą skryptu PHP
Aby uzyskać dane, możesz użyć funkcji PHP mysqli_query() i tego samego polecenia SQL SELECT z klauzulą WHERE.
Ta funkcja służy do wykonywania poleceń SQL, a następnie wyprowadzania wszystkich żądanych danych za pomocą funkcji PHP mysqli_fetch_array().
Instancja
Poniższy przykład zwróci z tabeli chenweiliang_tbl przy użyciu wartości pola chenweiliang_author jako chenweiliang.com nagranie:
Test klauzuli WHERE MySQL:
<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('连接失败: ' . mysqli_error($conn));
}
// 设置编码,防止中文乱码
mysqli_query($conn , "set names utf8");
// 读取 chenweiliang_author 为 chenweiliang.com 的数据
$sql = 'SELECT chenweiliang_id, chenweiliang_title,
chenweiliang_author, submission_date
FROM chenweiliang_tbl
WHERE chenweiliang_author="chenweiliang.com"';
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('无法读取数据: ' . mysqli_error($conn));
}
echo '<h2>陈沩亮博客 MySQL WHERE 子句测试<h2>';
echo '<table border="1"><tr><td>教程 ID</td><td>标题</td><td>作者</td><td>提交日期</td></tr>';
while($row = mysqli_fetch_array($retval, MYSQL_ASSOC))
{
echo "<tr><td> {$row['chenweiliang_id']}</td> ".
"<td>{$row['chenweiliang_title']} </td> ".
"<td>{$row['chenweiliang_author']} </td> ".
"<td>{$row['submission_date']} </td> ".
"</tr>";
}
echo '</table>';
// 释放内存
mysqli_free_result($retval);
mysqli_close($conn);
?>Nadzieja Chen Weiliang Blog ( https://www.chenweiliang.com/ ) udostępniono "Jak używać instrukcji gdzie MySQL? gdzie Klauzula wielu warunków składni”, aby ci pomóc.
Zapraszamy do udostępnienia linku do tego artykułu:https://www.chenweiliang.com/cwl-462.html
Aby odblokować więcej ukrytych sztuczek🔑, zapraszamy do dołączenia do naszego kanału Telegram!
Udostępnij i polub jeśli Ci się podoba! Twoje udostępnienia i polubienia są naszą ciągłą motywacją!