Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ความหมายของ <> ใน MySQL: ตัวดำเนินการ Not Equal มาตรฐาน ANSI


ความหมายของ <>

สัญลักษณ์ <> ใน MySQL หมายถึง Not Equal (ไม่เท่ากับ) เหมือนกับ != ทั้งคู่คืนค่า Boolean (1 = true, 0 = false)

เปรียบเทียบ 2 รูปแบบ

SELECT 3 <> 5;  -- ผลลัพธ์: 1
SELECT 3 != 5;  -- ผลลัพธ์: 1
SELECT 5 <> 5;  -- ผลลัพธ์: 0

ความแตกต่างสำคัญ

คุณสมบัติ <> !=
มาตรฐาน ANSI SQL (มาตรฐานสากล) MySQL Extension / พบในหลายภาษา
ความเข้ากันได้ ทุกฐานข้อมูล (PostgreSQL, Oracle, SQL Server, SQLite) ส่วนใหญ่รองรับ แต่ไม่ใช่มาตรฐาน
แนะนำใช้ ✅ ใช่ ได้ แต่ไม่ควร

ตัวอย่างใช้กับตาราง

สร้างตารางนักเรียน

CREATE TABLE NotEqualOperator (
    StudentId INT,
    StudentName VARCHAR(100),
    StudentSection VARCHAR(10)
);

INSERT INTO NotEqualOperator VALUES
(1, 'John', 'A'), (2, 'Carol', 'B'), (3, 'Sam', 'A'),
(4, 'Mike', 'B'), (5, 'Bob', 'B'), (6, 'David', 'B'), (7, 'Ramit', 'A');

คิวรี่หานักเรียนที่ไม่ได้อยู่ใน Section A

SELECT * FROM NotEqualOperator WHERE StudentSection <> 'A';

ผลลัพธ์

+-----------+-------------+----------------+
| StudentId | StudentName | StudentSection |
+-----------+-------------+----------------+
| 2         | Carol       | B              |
| 4         | Mike        | B              |
| 5         | Bob         | B              |
| 6         | David       | B              |
+-----------+-------------+----------------+

จัดการ NULL

-- NULL <> 'A' จะเป็น UNKNOWN ไม่ใช่ TRUE
-- ต้องเพิ่มเงื่อนไข IS NULL ถ้าต้องการรวม NULL
SELECT * FROM NotEqualOperator WHERE StudentSection <> 'A' OR StudentSection IS NULL;