Artiklite kataloog
MySQL andmebaasKuidas kus avaldust kasutada? kus klausel mitu tingimuslikku süntaksit
MySQL KUS klausel
Teame kasutada MySQL-i tabelist andmete lugemiseks SQL SELECT-lauset.
Tabelist andmete tingimuslikuks valimiseks lisage SELECT-lausele WHERE-klausel.
grammatika
Järgmine on SQL SELECT-lause üldine süntaks andmete lugemiseks andmetabelist, kasutades WHERE-klauslit:
SELECT field1, field2,...fieldN FROM table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....
- Päringulauses saate kasutada ühte või mitut tabelit, kasutades tabelite vahel komasid, Tükeldage ja kasutage päringutingimuste määramiseks käsku WHERE.
- Klauslis WHERE saate määrata mis tahes tingimuse.
- Saate määrata ühe või mitu tingimust kasutades JA või VÕI.
- WHERE-klauslit saab kasutada ka SQL-i käskudega DELETE või UPDATE.
- WHERE-klausel sarnaneb programmeerimiskeele tingimusega if, lugedes määratud andmeid vastavalt välja väärtusele MySQL-i tabelis.
Järgnevalt on loetletud operaatorid, mida saab WHERE-klauslis kasutada.
Allolevas tabelis olevad näited eeldavad, et A on 10 ja B on 20
| operaator | kirjeldus | Esimese astme |
|---|---|---|
| = | Võrdsusmärk, kontrollib, kas kaks väärtust on võrdsed, ja tagastab tõene, kui need on võrdsed | (A = B) tagastab vale. |
| <>, != | Pole võrdne, kontrollige, kas need kaks väärtust on võrdsed, kui mitte, tagastage tõene | (A != B) tagastab tõene. |
| > | Suurem kui märk, kontrolli, kas vasakpoolne väärtus on suurem kui parempoolne väärtus, kui vasakpoolne väärtus on suurem kui parempoolne väärtus, tagasta tõene | (A > B) tagastab vale. |
| < | Vähem kui märk, kontrolli, kas vasakpoolne väärtus on väiksem kui parempoolne väärtus, kui vasakpoolne väärtus on väiksem kui parempoolne väärtus, tagasta tõene | (A < B) tagastab tõene. |
| >= | Suurem või võrdusmärk, kontrollige, kas vasakpoolne väärtus on suurem või võrdne parempoolse väärtusega, kui vasakpoolne väärtus on suurem või võrdne parempoolse väärtusega, tagastage tõene | (A >= B) tagastab vale. |
| <= | Väiksem või võrdusmärk, kontrollige, kas vasakpoolne väärtus on väiksem või võrdne parempoolse väärtusega, kui vasakpoolne väärtus on väiksem või võrdne parempoolse väärtusega, tagastage tõene | (A <= B) tagastab tõene. |
WHERE-klausel on väga kasulik, kui tahame lugeda määratud andmeid MySQL-i andmetabelist.
Primaarvõtme kasutamine tingimuspäringuna WHERE-klauslis on väga kiire.
Kui antud kriteeriumidel pole tabelis ühtegi sobivat kirjet, ei tagasta päring andmeid.
lugeda käsurealt andmeid
Kasutame MySQL-i andmetabelis chenweiliang_tbl olevate andmete lugemiseks SQL SELECT-lause klauslit WHERE:
Esimese astme
Järgmine näide loeb kõiki tabelis chenweiliang_tbl olevaid kirjeid, kus välja chenweiliang_author väärtus on Sanjay:
SQL SELECT WHERE klausel
Stringide võrdlused MySQL-i WHERE-klauslis ei ole tõstutundlikud.Märksõna BINARY abil saate määrata, et WHERE-klausli stringide võrdlused on tõstutundlikud.
Järgmine näide:
BINAARNE märksõna
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)
kasutatud näites Binaarne märksõna, on tõstutundlik, seega chenweiliang_author='chenweiliang.com' Päringu tingimuseks on andmed puuduvad.
Lugege andmeid PHP skripti abil
Andmete hankimiseks saate kasutada PHP funktsiooni mysqli_query() ja sama SQL SELECT käsku koos WHERE-klausliga.
Seda funktsiooni kasutatakse SQL-käskude täitmiseks ja seejärel kõigi päringuandmete väljastamiseks PHP funktsiooni mysqli_fetch_array() kaudu.
Esimese astme
Järgmine näide naaseb tabelist chenweiliang_tbl, kasutades välja väärtust chenweiliang_author kui chenweiliang.com rekord:
MySQL WHERE klausli 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 Weiliangi ajaveeb ( https://www.chenweiliang.com/ ) jagatud "Kuidas kasutada MySQL-i kus avaldust? kus Klausli mitme tingimuse süntaks", et teid aidata.
Tere tulemast selle artikli linki jagama:https://www.chenweiliang.com/cwl-462.html
Rohkemate varjatud nippide🔑 avamiseks liitu meie Telegrami kanaliga!
Jaga ja like kui meeldib! Teie jagamised ja meeldimised on meie jätkuvaks motivatsiooniks!