Ինչպե՞ս օգտագործել MySQL where հայտարարությունը: որտեղ դրույթի բազմաթիվ պայմանների շարահյուսություն

MySQL տվյալների բազաԻնչպե՞ս օգտագործել Where հայտարարությունը: որտեղ դրույթի բազմաթիվ պայմանների շարահյուսություն

MySQL WHERE կետ

Մենք գիտենք, որ պետք է օգտագործել SQL SELECT հայտարարությունը MySQL աղյուսակից տվյալները կարդալու համար:

Աղյուսակից տվյալները պայմանականորեն ընտրելու համար SELECT դրույթին ավելացրեք WHERE կետ:

քերականություն

Հետևյալը SQL SELECT հայտարարության ընդհանուր շարահյուսությունն է՝ տվյալների աղյուսակից տվյալները կարդալու համար՝ օգտագործելով WHERE դրույթը.

SELECT field1, field2,...fieldN FROM table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • Հարցման մեջ կարող եք օգտագործել մեկ կամ մի քանի աղյուսակ՝ օգտագործելով աղյուսակների միջև ստորակետներ, Բաժանեք և օգտագործեք WHERE հայտարարությունը հարցման պայմանները սահմանելու համար:
  • WHERE կետում կարող եք նշել ցանկացած պայման:
  • Դուք կարող եք նշել մեկ կամ մի քանի պայմաններ՝ օգտագործելով AND կամ OR:
  • WHERE կետը կարող է օգտագործվել նաև SQL-ի DELETE կամ UPDATE հրամանների հետ:
  • WHERE դրույթը նման է if պայմանին ծրագրավորման լեզվում՝ կարդալով նշված տվյալները MySQL աղյուսակում դաշտի արժեքի համաձայն։

Հետևյալը օպերատորների ցանկն է, որոնք կարող են օգտագործվել WHERE կետում:

Ստորև բերված աղյուսակի օրինակները ենթադրում են, որ A-ն 10 է, իսկ B-ն՝ 20

օպերատոր描述օրինակ
=Equals նշանը, ստուգում է, թե արդյոք երկու արժեքները հավասար են, և վերադարձնում է true, եթե դրանք հավասար են(A = B) վերադարձնում է false:
<>, !=Հավասար չէ, ստուգեք, արդյոք երկու արժեքները հավասար են, եթե ոչ, վերադարձրեք ճշմարիտ(A != B) վերադարձնում է true:
>Նշանից մեծ է, ստուգեք, թե ձախ կողմի արժեքը մեծ է աջից, եթե ձախի արժեքը մեծ է աջից, վերադարձրեք true(A > B) վերադարձնում է false:
<Նշանակից պակաս, ստուգեք, թե ձախ կողմի արժեքը փոքր է աջից, եթե ձախի արժեքը փոքր է աջից, վերադարձրեք true(A < B) վերադարձնում է ճշմարիտ:
>=Ավելի մեծ կամ հավասար նշան, ստուգեք, թե արդյոք ձախ կողմի արժեքը մեծ է կամ հավասար է աջ կողմի արժեքին, եթե ձախի արժեքը մեծ է կամ հավասար է աջ կողմի արժեքին, վերադարձրեք true(A >= B) վերադարձնում է false:
<=Փոքր կամ հավասար նշան, ստուգեք, թե արդյոք ձախ կողմի արժեքը փոքր է կամ հավասար է աջ արժեքին, եթե ձախի արժեքը փոքր է կամ հավասար է աջ կողմի արժեքին, վերադարձրեք true(A <= B) վերադարձնում է true:

WHERE կետը շատ օգտակար է, եթե ցանկանում ենք կարդալ նշված տվյալները MySQL տվյալների աղյուսակից։

Առաջնային բանալին օգտագործելը որպես պայմանական հարցում WHERE կետում շատ արագ է:

Եթե ​​տվյալ չափանիշները չունեն աղյուսակում համապատասխան գրառումներ, հարցումը չի վերադարձնում տվյալներ:


կարդալ տվյալները հրամանի տողից

Մենք կօգտագործենք WHERE կետը SQL SELECT հայտարարության մեջ՝ կարդալու տվյալները MySQL տվյալների աղյուսակում chenweiliang_tbl:

օրինակ

Հետևյալ օրինակը կկարդա chenweiliang_tbl աղյուսակի բոլոր գրառումները, որտեղ chenweiliang_author դաշտի արժեքը Sanjay է:

SQL SELECT WHERE դրույթ

SELECT * - ից chenweiliang_tbl ՈՐՏԵՂ chenweiliang_author='Չեն Վայլյան博客';

MySQL-ի WHERE դրույթում տողերի համեմատությունները մեծատառերի նկատմամբ զգայուն չեն:Դուք կարող եք օգտագործել BINARY հիմնաբառը, որպեսզի նշեք, որ WHERE կետում տողերի համեմատությունները մեծատառերի նկատմամբ զգայուն են:

Հետևյալ օրինակը.

BINARY հիմնաբառ

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)

օգտագործված օրինակում Երկուական հիմնաբառ, մեծատառերի զգայուն է, ուստի chenweiliang_author='chenweiliang.com' Հարցման պայմանը տվյալներ չկա:


Կարդացեք տվյալները՝ օգտագործելով PHP script

Տվյալները ստանալու համար կարող եք օգտագործել PHP ֆունկցիան mysqli_query() և նույն SQL SELECT հրամանը՝ WHERE կետով:

Այս ֆունկցիան օգտագործվում է SQL հրամանները կատարելու և այնուհետև PHP ֆունկցիայի միջոցով դուրս բերելու բոլոր հարցվող տվյալները mysqli_fetch_array():

օրինակ

Հետևյալ օրինակը կվերադառնա chenweiliang_tbl աղյուսակից՝ օգտագործելով chenweiliang_author դաշտի արժեքը որպես chenweiliang.com գրառումը:

MySQL WHERE կետի թեստ.

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

Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «Ինչպե՞ս օգտագործել MySQL where հայտարարությունը: որտեղ Clause Multiple Condition Syntax», ձեզ օգնելու համար:

Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-462.html

Բարի գալուստ Chen Weiliang-ի բլոգի Telegram ալիք՝ վերջին թարմացումները ստանալու համար:

🔔 Եղեք առաջինը, ով կստանա արժեքավոր «ChatGPT բովանդակության շուկայավարման AI գործիքի օգտագործման ուղեցույցը» ալիքի վերին գրացուցակում: 🌟
📚 Այս ուղեցույցը պարունակում է հսկայական արժեք, 🌟Սա հազվագյուտ հնարավորություն է, բաց մի՛ թողեք այն։ ⏰⌛💨
Տարածեք և հավանեք, եթե հավանեցիք:
Ձեր տարածումը և հավանումները մեր շարունակական շարժառիթն են:

 

发表 评论

Ձեր էլ. Փոստի հասցեն չի հրապարակվի: Օգտագործվում են պահանջվող դաշտերը * Պիտակ

ոլորել դեպի վերև