দুটি টেবিলের মধ্যে যেগুলো প্রথম টেবিলে নেই, সেগুলো খুঁজে বের করতে NOT IN সাবকোয়েরি ব্যবহার করা হয়।
টেবিল ও ডেটা
mysql> CREATE TABLE PresentHistory (HisID INT, HisName VARCHAR(100)); mysql> INSERT INTO PresentHistory VALUES(1,'John'),(2,'Bob'); mysql> CREATE TABLE PastHistory (PastId INT, PastName VARCHAR(100)); mysql> INSERT INTO PastHistory VALUES(1,'John'),(2,'Bob'),(3,'Carol'),(4,'Jason');
খুঁজে বের করা
mysql> SELECT * FROM PastHistory WHERE PastName NOT IN (SELECT HisName FROM PresentHistory);
+--------+----------+ | PastId | PastName | +--------+----------+ | 3 | Carol | | 4 | Jason | +--------+----------+
Carol এবং Jason প্রথম টেবিলে নেই।
বিকল্প: LEFT JOIN
SELECT p.* FROM PastHistory p LEFT JOIN PresentHistory pr ON p.PastName = pr.HisName WHERE pr.HisName IS NULL;
বড় ডেটাসেটের জন্য LEFT JOIN দ্রুততর।