MySQL-এ একাধিক != শর্ত একসাথে লিখার পরিবর্তে NOT IN() অপারেটর ব্যবহার করুন।
তুলনা
-- লম্বা পদ্ধতি WHERE id != 5 AND id != 10 AND id != 15 -- সংক্ষিপ্ত পদ্ধতি WHERE id NOT IN (5, 10, 15)
উদাহরণ
CREATE TABLE User_informations (UserId INT, UserName VARCHAR(20)); INSERT INTO User_informations VALUES (12,'Maxwell'),(7,'David'),(1,'Ramit'),(10,'Bob'), (2,'Carol'),(14,'Sam'),(6,'Mike'),(4,'Robert');
কোয়েরি
SELECT * FROM User_informations WHERE UserId NOT IN (1, 2, 7);
ফলাফল
+--------+----------+ | UserId | UserName | +--------+----------+ | 12 | Maxwell | | 10 | Bob | | 14 | Sam | | 6 | Mike | | 4 | Robert | +--------+----------+
সাবকোয়েরি দিয়ে NOT IN
SELECT * FROM Users WHERE UserId NOT IN (SELECT UserId FROM BannedUsers);
সতর্কতা: NULL মান
SELECT * FROM t WHERE col NOT IN (1, 2, NULL); -- সবসময় খালি ফেরত দেবে!
NOT IN তালিকায় NULL থাকলে কোনো রো ম্যাচ করে না। সমাধান: NOT IN (SELECT col FROM t WHERE col IS NOT NULL) বা NOT EXISTS ব্যবহার করুন।