Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> SQL Server

เงื่อนไข IN ใน SQL Server

เงื่อนไข IN ถูกใช้ใน SQL Server (Transact-SQL) เพื่อลดความจำเป็นในการใช้เงื่อนไข OR มากเกินไปในคำสั่ง SELECT, INSERT, UPDATE หรือ DELETE

ไวยากรณ์ของเงื่อนไข IN

 biểu thức IN (giá trị 1, giá trị 2, … giá trị n); 

ชื่อตัวแปรหรือค่าตัวแปร

นิพจน์

ค่าที่จะตรวจสอบ

ค่า 1, ค่า 2, . ค่า n

ค่าที่จะตรวจสอบด้วยนิพจน์

หมายเหตุ

  1. เงื่อนไข IN ใน SQL Server จะคืนค่าเรกคอร์ดเมื่อนิพจน์มีค่าเท่ากับ 1, ค่า 2, . หรือค่า n
  2. เงื่อนไข IN ใน SQL Server เรียกอีกอย่างว่าตัวดำเนินการ IN

ตัวอย่างเช่น - มีค่าสตริง

  SELECT  * 
FROM nhanvien
WHERE ho I N ('Smith', 'Anderson', 'Johnson');

ผลลัพธ์จะเป็นแถวจากตารางหากนามสกุลของพนักงานคือ Smith, Anderson หรือ Johnson เนื่องจากการใช้ * ในคำสั่ง SELECT ฟิลด์ทั้งหมดในสารบัญจะอยู่ในชุดผลลัพธ์

ตัวอย่างด้านบนคล้ายกับคำสั่ง SELECT ด้านล่าง

  SELEC T * 
FROM nhanvien
WHERE ho = 'Smith'
OR ho = 'Anderson'
OR ho = 'Joh nson';

การใช้เงื่อนไข IN ช่วยให้คำสั่งดูสั้นลงและเข้าใจง่ายขึ้น

ตัวอย่างเช่น - มีค่าตัวเลข

  SELEC T * 
FROM nhanvien
WHERE nha nvien_id IN (1, 2, 3, 4, 10);

ผลลัพธ์ที่ส่งคืนคือพนักงานที่มี ID คือ 1, 2, 3, 4 หรือ 10 คำสั่งข้างต้นเทียบเท่ากับคำสั่งต่อไปนี้

  SELECT  * 
FROM nhanvien
WHERE nhanvien_id = 1
OR nhanvien_id = 2
OR nhanvien_id = 3
OR nhanvien_id = 4
OR nhanvien_i d = 10;

ตัวอย่างเช่น - ใช้ตัวดำเนินการ NOT

  SELE CT * 
FROM nhanvien
WHERE t en NOT IN ('Sarah', 'John', 'Dale');

ในตัวอย่างข้างต้น ชุดผลลัพธ์ประกอบด้วยแถวจากตารางที่มีชื่อพนักงานอื่นที่ไม่ใช่ Sarah, John หรือ Dale บางครั้งก็ง่ายกว่าที่จะหาค่าที่ไม่ใช่ค่าที่คุณต้องการ ตัวอย่างข้างต้นเทียบเท่ากับคำสั่งด้านล่าง

 SELECT * 
FROM nhanvien
WHERE ten <> 'Sarah'
AND ten <> 'John'
AND ten <> 'Dale';