Hoe kinne jo MySQL wêr-ferklearring brûke? dêr't clause meardere betingsten syntaksis

MySQL databankHoe te brûken wêr-ferklearring? dêr't clause meardere betingsten syntaksis

MySQL WHERE klausule

Wy witte SQL SELECT-statement te brûken om gegevens fan MySQL-tabel te lêzen.

Om gegevens út in tabel betingst te selektearjen, foegje in WHERE-klausule ta oan de SELECT-útspraak.

grammatika

It folgjende is de algemiene syntaksis fan in SQL SELECT-statement om gegevens te lêzen fan in gegevenstabel mei de WHERE-klausule:

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • Jo kinne ien of mear tabellen brûke yn 'e query statement, mei komma's tusken tabellen, Split, en brûk de WHERE statement om query betingsten yn te stellen.
  • Jo kinne elke betingst opjaan yn 'e WHERE-klausule.
  • Jo kinne ien of mear betingsten opjaan mei EN of OR.
  • De WHERE-klausule kin ek brûkt wurde mei SQL's DELETE- of UPDATE-kommando's.
  • De WHERE-klausule is fergelykber mei de if-betingsten yn prosedurele talen, en lêst de opjûne gegevens neffens de fjildwearde yn 'e MySQL-tabel.

It folgjende is in list mei operators dy't brûkt wurde kinne yn 'e WHERE-klausule.

De foarbylden yn 'e tabel hjirûnder geane derfan út dat A 10 is en B 20 is

operatorbeskriuwingInstance
=Gelyk teken, kontrolearret oft twa wearden gelyk binne, en jout wier as se gelyk binne(A = B) jout falsk werom.
<>, !=Net gelyk, kontrolearje oft de twa wearden gelyk binne, as net, werom wier(A != B) jout wier.
>Grutter as teken, kontrolearje oft de wearde oan de linkerkant grutter is as de wearde oan de rjochterkant, as de wearde oan de linkerkant grutter is as de wearde oan de rjochterkant, werom wier(A > B) jout falsk werom.
<Minder as teken, kontrolearje oft de wearde oan 'e lofterkant minder is as de wearde oan' e rjochter, as de wearde oan 'e linkerkant minder is as de wearde oan 'e rjochter, werom wier(A <B) jout wier.
>=Grutter as of gelyk teken, kontrolearje oft de wearde oan de linkerkant grutter is as of gelyk oan de wearde oan de rjochterkant, as de wearde oan de linkerkant is grutter as of gelyk oan de wearde oan de rjochterkant, werom wier(A >= B) jout falsk werom.
<=Minder as of gelyk teken, kontrolearje oft de wearde oan de linkerkant minder is as of gelyk oan de wearde oan de rjochterkant, as de wearde oan de linkerkant is minder as of gelyk oan de wearde oan de rjochterkant, werom wier(A <= B) jout wier.

De WHERE-klausel is heul nuttich as wy de oantsjutte gegevens fan 'e MySQL-gegevenstabel lêze wolle.

It brûken fan de primêre kaai as in betingsten query yn 'e WHERE-klausule is heul fluch.

As de opjûne kritearia gjin oerienkommende records yn 'e tabel hawwe, jout de query gjin gegevens.


lês gegevens út kommando pront

Wy sille de WHERE-klausule brûke yn 'e SQL SELECT-statement om de gegevens te lêzen yn' e MySQL-gegevenstabel chenweiliang_tbl:

Instance

It folgjende foarbyld sil alle records lêze yn 'e tabel chenweiliang_tbl wêr't de wearde fan it fjild chenweiliang_author Sanjay is:

SQL SELECT WHERE-klausule

ÚTKIEZE * fan chenweiiliang_tbl WÊR chenweiliang_author='Chen Weiliang博客';

String-fergelikingen yn MySQL's WHERE-klausule binne net-gefoelige.Jo kinne it BINARY-kaaiwurd brûke om oan te jaan dat tekenrige fergelikingen yn 'e WHERE-klausule haadlettergefoelich binne.

It folgjende foarbyld:

BINARY kaaiwurd

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)

brûkt yn it foarbyld BINAAR kaaiwurd, is haadlettergefoelich, dus chenweiliang_author='chenweiliang.com' De query betingst is gjin gegevens.


Lês gegevens mei PHP-skript

Jo kinne de PHP-funksje mysqli_query () en itselde SQL SELECT-kommando brûke mei in WHERE-klausule om de gegevens te krijen.

Dizze funksje wurdt brûkt om SQL-kommando's út te fieren en dan alle opfrege gegevens út te fieren fia de PHP-funksje mysqli_fetch_array ().

Instance

It folgjende foarbyld sil weromkomme fan 'e tabel chenweiliang_tbl mei de fjildwearde chenweiliang_author as chenweiiliang.com rekord fan:

MySQL WHERE clause test:

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

Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) dield "Hoe kin ik de MySQL wêr-ferklearring brûke? wêr't Clause Syntaksis foar meardere betingsten", om jo te helpen.

Wolkom om de keppeling fan dit artikel te dielen:https://www.chenweiliang.com/cwl-462.html

Wolkom by it Telegram-kanaal fan Chen Weiliang's blog om de lêste updates te krijen!

🔔 Wês de earste om de weardefolle "ChatGPT Content Marketing AI Tool Usage Guide" te krijen yn 'e kanaaltopmap! 🌟
📚 Dizze hantlieding befettet enoarme wearde, 🌟Dit is in seldsume kâns, mis it net! ⏰⌛💨
Diel en like as jo wolle!
Jo dielen en likes binne ús trochgeande motivaasje!

 

发表 评论

Jo e-postadres wurdt net publisearre. Ferplichte fjilden wurde brûkt * Etiket

rôlje nei boppen