Հոդվածների տեղեկատու
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 դրույթ
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 ալիք՝ վերջին թարմացումները ստանալու համար:
📚 Այս ուղեցույցը պարունակում է հսկայական արժեք, 🌟Սա հազվագյուտ հնարավորություն է, բաց մի՛ թողեք այն։ ⏰⌛💨
Տարածեք և հավանեք, եթե հավանեցիք:
Ձեր տարածումը և հավանումները մեր շարունակական շարժառիթն են: