Jak używać instrukcji gdzie MySQL? gdzie klauzula wielokrotna składnia warunkowa

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

operatoropisInstancja
=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

SELECT * od chenweiliang_tbl WHERE chenweiliang_autor="Chen WeiliangBlog";

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);
?>

发表 评论

Twój adres e-mail nie zostanie opublikowany. 必填 项 已 用 * 标注

Przewiń do góry