সেলফ JOIN দিয়ে একই টেবিলে একাধিক শর্ত মিলিয়ে খোঁজা
যদি একই টেবিলে একজন ব্যক্তির একাধিক পছন্দ থাকে এবং যারা দুটো শর্ত পূরণ করে (যেমন Apple ও Banana পছন্দ) সেগুলো বের করতে সেলফ JOIN ব্যবহার করুন।
উদাহরণ: টেবিল এবং ডেটা
mysql> CREATE TABLE selectPerson (
-> PersonId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> PersonName VARCHAR(20), PersonFavouriteFruit VARCHAR(60)
-> );
mysql> INSERT INTO selectPerson (PersonName, PersonFavouriteFruit) VALUES
-> ('John','Banana'), ('John','Blackberry'), ('John','Blueberry'),
-> ('Carol','Apple'), ('Carol','Avocado'), ('Carol','Banana'),
-> ('Sam','Ackee'), ('Sam','Apple'), ('Sam','Apricots'), ('Sam','Banana');
Apple এবং Banana দুটোই পছন্দ করে যারা
mysql> SELECT tbl1.PersonName
-> FROM selectPerson tbl1
-> JOIN selectPerson tbl2 ON tbl1.PersonName = tbl2.PersonName
-> WHERE tbl1.PersonFavouriteFruit = 'Banana'
-> AND tbl2.PersonFavouriteFruit = 'Apple';
+------------+
| PersonName |
+------------+
| Carol |
| Sam |
+------------+
ব্যাখ্যা: একই টেবিলকে দুবার আলাদা আলিয়াস (tbl1, tbl2) দিয়ে JOIN করা হয়েছে, এবং দুটি ভিন্ন ফলের শর্ত লাগানো হয়েছে।