บทนำ
การ исключить (Exclude) แถวเฉพาะจากผลลัพธ์การค้นหา สามารถใช้ตัวดำเนินการ <> (Not Equal) หรือ != ในเงื่อนไข WHERE
ตัวอย่างการสร้างตารางและเพิ่มข้อมูล
mysql> CREATE TABLE DemoTable (
-> Id INT,
-> FirstName VARCHAR(100)
-> );
Query OK, 0 rows affected (0.58 sec)
mysql> INSERT INTO DemoTable VALUES(1, 'John');
mysql> INSERT INTO DemoTable VALUES(2, 'Chris');
mysql> INSERT INTO DemoTable VALUES(3, 'Robert');
mysql> INSERT INTO DemoTable VALUES(4, 'David');
แสดงข้อมูลทั้งหมด
mysql> SELECT * FROM DemoTable;
ผลลัพธ์
+------+-----------+
| Id | FirstName |
+------+-----------+
| 1 | John |
| 2 | Chris |
| 3 | Robert |
| 4 | David |
+------+-----------+
4 rows in set (0.00 sec)
คำสั่งตัดแถวที่ Id = 2 ออก
mysql> SELECT Id, FirstName FROM DemoTable WHERE Id <> 2;
หรือ
mysql> SELECT Id, FirstName FROM DemoTable WHERE Id != 2;
ผลลัพธ์
+------+-----------+
| Id | FirstName |
+------+-----------+
| 1 | John |
| 3 | Robert |
| 4 | David |
+------+-----------+
3 rows in set (0.00 sec)
ตัวดำเนินการเปรียบเทียบใน MySQL
| ตัวดำเนินการ | ความหมาย | มาตรฐาน SQL |
|---|---|---|
| = | เท่ากับ | ใช่ |
| <> หรือ != | ไม่เท่ากับ | <> = ANSI SQL, != = MySQL extension |
| <, >, <=, >= | น้อยกว่า, มากกว่า, น้อยกว่าหรือเท่า, มากกว่าหรือเท่า | ใช่ |
| IS NULL / IS NOT NULL | ตรวจสอบค่า NULL | ใช่ |
การประยุกต์: ตัดหลายค่า
-- ใช้ NOT IN
SELECT * FROM DemoTable WHERE Id NOT IN (2, 4);
-- ใช้ AND
SELECT * FROM DemoTable WHERE Id <> 2 AND Id <> 4;