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

มีโอเปอเรเตอร์ใน MySQL ที่จะใช้เงื่อนไข NOT หลายข้อเช่น WHERE id !=5 AND id !=10 AND id !=15 หรือไม่


ใช่ สำหรับ MySQL นี้มาพร้อมกับ NOT IN.

ไวยากรณ์มีดังนี้

เลือก *จาก yourTableName โดยที่ yourColumnName ไม่อยู่ใน (1,2,7);

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้

mysql> สร้างตาราง User_informations -> ( -> UserId int, -> UserName varchar(20) -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.47 วินาที)

แทรกบางระเบียนในตารางโดยใช้คำสั่ง insert

แบบสอบถามมีดังนี้

mysql> แทรกลงในค่า User_informations (12,'Maxwell');Query OK, 1 แถวได้รับผลกระทบ (0.17 วินาที)mysql> แทรกลงในค่า User_informations (7,'David');Query OK, 1 แถวได้รับผลกระทบ (0.10 วินาที )mysql> แทรกลงในค่า User_informations (1,'Ramit'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.36 วินาที) mysql> แทรกลงในค่า User_informations (10,'Bob'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที) mysql> แทรกลงในค่า User_informations (2,'Carol'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.14 วินาที) mysql> แทรกลงในค่า User_informations (14, 'Sam'); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.23 วินาที) mysql> แทรก ลงในค่า User_informations(6,'Mike');Query OK, 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงใน User_informations ค่า(4,'Robert');Query OK, 1 แถวได้รับผลกระทบ (0.13 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select

แบบสอบถามมีดังนี้

mysql> เลือก *จาก User_informations;

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+---------+----------+| รหัสผู้ใช้ | ชื่อผู้ใช้ |+---------+----------+| 12 | แม็กซ์เวลล์ || 7 | เดวิด || 1 | รมิท || 10 | บ๊อบ || 2 | แครอล || 14 | แซม || 6 | ไมค์ || 4 | Robert |+-------+----------+8 แถวในชุด (0.00 วินาที)

ต่อไปนี้คือการใช้งานสิ่งที่คุณถามโดยใช้ NOT IN()

แบบสอบถามมีดังนี้

mysql> เลือก *จาก User_informations โดยที่ UserId ไม่อยู่ใน (1,2,7);

ต่อไปนี้เป็นผลลัพธ์

<ก่อนหน้า>+---------+----------+| รหัสผู้ใช้ | ชื่อผู้ใช้ |+---------+----------+| 12 | แม็กซ์เวลล์ || 10 | บ๊อบ || 14 | แซม || 6 | ไมค์ || 4 | Robert |+-------+----------+5 แถวในชุด (0.00 วินาที)