เงื่อนไข IN ใช้ทำอะไร?
IN ใช้ตรวจสอบว่าค่าของ expression อยู่ในรายการค่าที่กำหนดหรือไม่ ลดความซับซ้อนของหลายเงื่อนไข OR
รูปแบบคำสั่ง
expression IN (value1, value2, ..., value_n);
ตัวอย่าง
1. ใช้กับข้อความ (String)
SELECT *
FROM nhanvien
WHERE ho IN ('Smith', 'Anderson', 'Johnson');
เทียบเท่า: WHERE ho = 'Smith' OR ho = 'Anderson' OR ho = 'Johnson'
2. ใช้กับตัวเลข (Numeric)
SELECT *
FROM nhanvien
WHERE nhanvien_id IN (1, 2, 3, 4, 10);
3. ใช้กับ NOT IN (ค่าที่ไม่อยู่ในรายการ)
SELECT *
FROM nhanvien
WHERE ten NOT IN ('Sarah', 'John', 'Dale');
เทียบเท่า: WHERE ten <> 'Sarah' AND ten <> 'John' AND ten <> 'Dale'
ข้อดี: อ่านง่าย สั้นกว่า OR หลายตัว รองรับ subquery ได้ (WHERE col IN (SELECT ...))