ไดเรกทอรีบทความ
ฐานข้อมูล MySQLวิธีการใช้คำสั่ง where? โดยที่ประโยคประโยคเงื่อนไขหลายประโยค
MySQL WHERE ข้อ
เรารู้ว่าจะใช้คำสั่ง SQL SELECT เพื่ออ่านข้อมูลจากตาราง MySQL
ในการเลือกข้อมูลจากตารางแบบมีเงื่อนไข ให้เพิ่มส่วนคำสั่ง WHERE ลงในคำสั่ง SELECT
ไวยากรณ์
ต่อไปนี้เป็นรูปแบบทั่วไปของคำสั่ง SQL SELECT เพื่ออ่านข้อมูลจากตารางข้อมูลโดยใช้คำสั่ง WHERE:
SELECT field1, field2,...fieldN FROM table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....
- คุณสามารถใช้ตารางอย่างน้อยหนึ่งตารางในคำสั่งแบบสอบถาม โดยใช้เครื่องหมายจุลภาคระหว่าง table, แยกและใช้คำสั่ง WHERE เพื่อกำหนดเงื่อนไขคิวรี
- คุณสามารถระบุเงื่อนไขใดๆ ในส่วนคำสั่ง WHERE
- คุณสามารถระบุอย่างน้อยหนึ่งเงื่อนไขโดยใช้ AND หรือ OR
- ส่วนคำสั่ง WHERE สามารถใช้กับคำสั่ง DELETE หรือ UPDATE ของ SQL
- ส่วนคำสั่ง WHERE จะคล้ายกับเงื่อนไข if ในภาษาการเขียนโปรแกรม โดยจะอ่านข้อมูลที่ระบุตามค่าฟิลด์ในตาราง MySQL
ต่อไปนี้คือรายการตัวดำเนินการที่สามารถใช้ในอนุประโยค WHERE
ตัวอย่างในตารางด้านล่างถือว่า A คือ 10 และ B คือ 20
โอเปอเรเตอร์ | ลักษณะ | ตัวอย่าง |
---|---|---|
= | เครื่องหมายเท่ากับ ตรวจสอบว่าสองค่าเท่ากันหรือไม่ และคืนค่า จริง หากมีค่าเท่ากัน | (A = B) คืนค่าเท็จ |
<>, != | ไม่เท่ากัน ตรวจสอบว่าทั้งสองค่าเท่ากันหรือไม่ ถ้าไม่ให้คืนค่า true | (A != B) คืนค่าเป็นจริง |
> | มากกว่าเครื่องหมาย ตรวจสอบว่าค่าทางด้านซ้ายมากกว่าค่าทางด้านขวาหรือไม่ ถ้าค่าทางด้านซ้ายมากกว่าค่าทางด้านขวา ให้คืนค่า จริง | (A > B) คืนค่าเท็จ |
< | น้อยกว่าเครื่องหมาย ตรวจสอบว่าค่าทางด้านซ้ายน้อยกว่าค่าทางด้านขวาหรือไม่ ถ้าค่าทางด้านซ้ายน้อยกว่าค่าทางด้านขวาให้คืนค่า จริง | (A < B) คืนค่าเป็นจริง |
>= | เครื่องหมายมากกว่าหรือเท่ากับ ตรวจสอบว่าค่าทางด้านซ้ายมากกว่าหรือเท่ากับค่าทางด้านขวา หากค่าทางด้านซ้ายมากกว่าหรือเท่ากับค่าทางด้านขวาให้คืนค่า จริง | (A >= B) คืนค่าเท็จ |
<= | เครื่องหมายน้อยกว่าหรือเท่ากับ ตรวจสอบว่าค่าทางด้านซ้ายน้อยกว่าหรือเท่ากับค่าทางด้านขวา หากค่าทางด้านซ้ายน้อยกว่าหรือเท่ากับค่าทางด้านขวาให้คืนค่าจริง | (A <= B) คืนค่าเป็นจริง |
ส่วนคำสั่ง WHERE มีประโยชน์มากหากเราต้องการอ่านข้อมูลที่ระบุจากตารางข้อมูล MySQL
การใช้คีย์หลักเป็นการสืบค้นแบบมีเงื่อนไขในส่วนคำสั่ง WHERE นั้นรวดเร็วมาก
ถ้าเกณฑ์ที่กำหนดไม่มีระเบียนที่ตรงกันในตาราง คิวรีจะไม่ส่งกลับข้อมูล
อ่านข้อมูลจากพรอมต์คำสั่ง
เราจะใช้ส่วนคำสั่ง WHERE ในคำสั่ง SQL SELECT เพื่ออ่านข้อมูลในตารางข้อมูล MySQL chenweiliang_tbl:
ตัวอย่าง
ตัวอย่างต่อไปนี้จะอ่านบันทึกทั้งหมดในตาราง chenweiliang_tbl โดยที่ค่าของฟิลด์ chenweiliang_author คือ Sanjay:
SQL SELECT WHERE ข้อ
การเปรียบเทียบสตริงในส่วนคำสั่ง WHERE ของ MySQL ไม่คำนึงถึงขนาดตัวพิมพ์คุณสามารถใช้คีย์เวิร์ด BINARY เพื่อระบุการเปรียบเทียบสตริงในส่วนคำสั่ง WHERE ที่คำนึงถึงขนาดตัวพิมพ์
ตัวอย่างต่อไปนี้:
คำหลักไบนารี
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
คุณสามารถใช้ฟังก์ชัน PHP mysqli_query() และคำสั่ง SQL SELECT เดียวกันกับส่วนคำสั่ง WHERE เพื่อรับข้อมูล
ฟังก์ชันนี้ใช้เพื่อรันคำสั่ง SQL แล้วส่งออกข้อมูลที่สอบถามทั้งหมดผ่านฟังก์ชัน PHP mysqli_fetch_array()
ตัวอย่าง
ตัวอย่างต่อไปนี้จะส่งคืนจากตาราง chenweiliang_tbl โดยใช้ค่าฟิลด์ chenweiliang_author เป็น chenweiliang.คอม บันทึกของ:
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 ที่ไหน? โดยที่ประโยคเงื่อนไขหลายเงื่อนไข" เพื่อช่วยคุณ
ยินดีต้อนรับสู่การแบ่งปันลิงค์ของบทความนี้:https://www.chenweiliang.com/cwl-462.html
ยินดีต้อนรับสู่ช่อง Telegram ของบล็อกของ Chen Weiliang เพื่อรับข่าวสารล่าสุด!
📚 คู่มือนี้มีคุณค่ามหาศาล 🌟 นี่เป็นโอกาสที่หายาก อย่าพลาด! ⏰⌛💨
แชร์และชอบถ้าคุณชอบ!
การแบ่งปันและไลค์ของคุณเป็นแรงจูงใจอย่างต่อเนื่องของเรา!