चूंकि हम MySQL में MINUS क्वेरी का उपयोग नहीं कर सकते हैं, हम MINUS क्वेरी का अनुकरण करने के लिए LEFT JOIN का उपयोग करेंगे। इसे निम्न उदाहरण की सहायता से समझा जा सकता है:
उदाहरण
इस उदाहरण में, हम दो टेबल हैं, जिसका नाम है Student_detail और Student_info जिसमें निम्न डेटा है -
mysql> Select * from Student_detail; +-----------+---------+------------+------------+ | studentid | Name | Address | Subject | +-----------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 150 | Rajesh | Jaipur | Yoga | | 160 | Pradeep | Kochi | Hindi | +-----------+---------+------------+------------+ 7 rows in set (0.00 sec) mysql> Select * from Student_info; +-----------+-----------+------------+-------------+ | studentid | Name | Address | Subject | +-----------+-----------+------------+-------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Chandigarh | Literature | | 130 | Ram | Jhansi | Computers | | 132 | Shyam | Chandigarh | Economics | | 133 | Mohan | Delhi | Computers | | 165 | Abhimanyu | Calcutta | Electronics | +-----------+-----------+------------+-------------+ 6 rows in set (0.00 sec)
अब, LEFT JOIN का उपयोग करने वाली निम्न क्वेरी, छात्र_जानकारी में 'studentid' मान वापस करने के लिए MINUS का अनुकरण करेगी, लेकिन Student_detail तालिका में नहीं।
mysql> SELECT studentid from student_info LEFT JOIN Student_detail USING(studentid) WHERE student_detail.studentid IS NULL; +-----------+ | studentid | +-----------+ | 165 | +-----------+ 1 row in set (0.07 sec)
अब, निम्न क्वेरी हमें उपरोक्त क्वेरी के विपरीत परिणाम देगी यानी यह 'studentid' मान को student_detail में वापस कर देगी, लेकिन Student_info तालिका में नहीं।
mysql> SELECT studentid from student_detail LEFT JOIN Student_info USING(studentid) WHERE student_info.studentid IS NULL; +-----------+ | studentid | +-----------+ | 150 | | 160 | +-----------+ 2 rows in set (0.00 sec)