การค้นหาแถวข้อมูลเฉพาะใน MySQL
เพื่อค้นหาแถวที่ตรงกับเงื่อนไขที่กำหนด เราใช้คำสั่ง SELECT ร่วมกับ WHERE เพื่อกรองข้อมูลตามคอลัมน์ที่ต้องการ
ตัวอย่างการสร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
UserId INT,
UserName VARCHAR(100)
);
Query OK, 0 rows affected (0.66 sec)
mysql> INSERT INTO DemoTable VALUES(100,'Chris');
mysql> INSERT INTO DemoTable VALUES(101,'Bob');
mysql> INSERT INTO DemoTable VALUES(102,'David');
mysql> INSERT INTO DemoTable VALUES(103,'Mike');
mysql> INSERT INTO DemoTable VALUES(104,'Sam');
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM DemoTable;
ผลลัพธ์:
+--------+----------+
| UserId | UserName |
+--------+----------+
| 100 | Chris |
| 101 | Bob |
| 102 | David |
| 103 | Mike |
| 104 | Sam |
+--------+----------+
5 rows in set (0.00 sec)
คำสั่งค้นหาแถวที่ UserId = 102 และ UserName = 'David'
mysql> SELECT * FROM DemoTable WHERE UserId=102 AND UserName='David';
ผลลัพธ์:
+--------+----------+
| UserId | UserName |
+--------+----------+
| 102 | David |
+--------+----------+
1 row in set (0.00 sec)
คำแนะนำ
- ใช้
ANDเพื่อรวมเงื่อนไขหลายอย่าง (ทั้งสองเงื่อนไขต้องเป็นจริง) - ใช้
ORหากต้องการให้ตรงกับเงื่อนไขใดเงื่อนไขหนึ่งก็ได้ - ควรระบุชื่อคอลัมน์แทน
SELECT *เพื่อประสิทธิภาพที่ดีขึ้น