Kiel uzi MySQL where deklaro? kie klaŭzo multobla kondiĉa sintakso

MySQL-datumbazoKiel uzi kie deklaron? kie klaŭzo multoblaj kondiĉoj sintakso

MySQL WHERE subfrazo

Ni scias uzi SQL SELECT deklaron por legi datumojn de MySQL-tabelo.

Por kondiĉe elekti datumojn el tabelo, aldonu WHERE-frazon al la SELECT deklaro.

gramatiko

La jena estas la ĝenerala sintakso de SQL SELECT deklaro por legi datumojn de datumtabelo uzante la WHERE klaŭzo:

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • Vi povas uzi unu aŭ plurajn tabelojn en la demanda deklaro, uzante komojn inter tabeloj, Dividu, kaj uzu la deklaron WHERE por agordi demandajn kondiĉojn.
  • Vi povas specifi ajnan kondiĉon en la WHERE-frazo.
  • Vi povas specifi unu aŭ pli da kondiĉoj uzante AND aŭ AŬ.
  • La WHERE-frazo ankaŭ povas esti uzata kun la komandoj DELETE aŭ UPDATE de SQL.
  • La WHERE-frazo similas al la se kondiĉo en proceduraj lingvoj, kaj legas la specifitajn datumojn laŭ la kampa valoro en la MySQL-tabelo.

La sekvanta estas listo de operatoroj uzeblaj en la WHERE-frazo.

La ekzemploj en la suba tabelo supozas ke A estas 10 kaj B estas 20

operatoroPriskriboekzemplo
=Egala signo, kontrolas ĉu du valoroj estas egalaj, kaj liveras veraj se ili estas egalaj(A = B) donas malvera.
<>, !=Ne egala, kontrolu ĉu du valoroj estas egalaj, redonu veraj se ili ne estas egalaj(A != B) donas vera.
>Pli granda ol signo, kontrolu ĉu la valoro maldekstre estas pli granda ol la valoro dekstre, se la valoro maldekstre estas pli granda ol la valoro dekstre, redonu vera(A > B) donas malvera.
<Malpli ol signo, kontrolu ĉu la valoro maldekstre estas malpli granda ol la valoro dekstre, se la valoro maldekstre estas malpli granda ol la valoro dekstre, redonu vera(A < B) donas vera.
>=Pli granda ol aŭ egala signo, kontrolu ĉu la valoro maldekstre estas pli granda aŭ egala al la valoro dekstre, se la valoro maldekstre estas pli granda aŭ egala al la valoro dekstre, redonu vera(A >= B) redonas malvera.
<=Malpli ol aŭ egala signo, kontrolu ĉu la valoro maldekstre estas malpli aŭ egala al la valoro dekstre, se la valoro maldekstre estas malpli aŭ egala al la valoro dekstre, revenu vera(A <= B) donas vera.

La WHERE-frazo estas tre utila se ni volas legi la specifitajn datumojn el la MySQL-datumtabelo.

Uzi la ĉefan ŝlosilon kiel kondiĉan demandon en la WHERE-frazo estas tre rapida.

Se la donitaj kriterioj ne havas ajnajn kongruajn rekordojn en la tabelo, la demando resendas neniujn datumojn.


legi datumojn de komanda prompto

Ni uzos la klaŭzon WHERE en la SQL SELECT deklaro por legi la datumojn en la MySQL-datumtabelo chenweiliang_tbl:

ekzemplo

La sekva ekzemplo legos ĉiujn rekordojn en la tabelo chenweiliang_tbl kie la valoro de la kampo chenweiliang_author estas Sanjay:

SQL SELECT WHERE klaŭzo

ELEKTU * el chenweiliang_tbl WHERE chenweiliang_author='Chen Weiliang博客';

Ŝnuraj komparoj en la WHERE-frazo de MySQL estas majuskle-malsentemaj.Vi povas uzi la BINARY-ŝlosilvorton por specifi, ke kordaj komparoj en la WHERE-frazo estas majusklaj.

La sekva ekzemplo:

BINARA ŝlosilvorto

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)

uzata en la ekzemplo BINARO ŝlosilvorto, estas majuskle-distinta, do chenweiliang_author='chenweiliang.com' La demandkondiĉo estas neniu datumo.


Legu datumojn per PHP-skripto

Vi povas uzi la PHP-funkcion mysqli_query() kaj la saman SQL SELECT komandon kun WHERE klaŭzo por akiri la datumojn.

Ĉi tiu funkcio estas uzata por plenumi SQL-komandojn kaj poste eligi ĉiujn demanditajn datumojn per la PHP-funkcio mysqli_fetch_array().

ekzemplo

La sekva ekzemplo revenos de la tabelo chenweiliang_tbl uzante la valoron de la kampo chenweiliang_author kiel chenweiliang.com rekordo de:

Testo de MySQL WHERE klaŭzo:

<?
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 Blogo ( https://www.chenweiliang.com/ ) konigis "Kiel uzi la MySQL where deklaron? kie Clause Multiple Condition Syntax", por helpi vin.

Bonvenon dividi la ligon de ĉi tiu artikolo:https://www.chenweiliang.com/cwl-462.html

Bonvenon al la Telegram-kanalo de la blogo de Chen Weiliang por ricevi la plej novajn ĝisdatigojn!

🔔 Estu la unua ricevi la valoran "ChatGPT Content Marketing AI Tool Use Guide" en la ĉefa dosierujo de la kanalo! 🌟
📚 Ĉi tiu gvidilo enhavas grandegan valoron, 🌟Ĉi tio estas malofta ŝanco, ne maltrafu ĝin! ⏰⌛💨
Kunhavigu kaj ŝatu se vi ŝatas!
Via kundivido kaj ŝatoj estas nia kontinua instigo!

 

Lasu komenton

Via retpoŝta adreso ne estos publikigita. Bezonataj kampoj estas uzataj * Etikedo

rulumu al la supro