MySQL IN स्टेटमेंट का मूल उपयोग एक कॉलम को कई मानों से तुलना करने से संबंधित है। MySQL IN स्टेटमेंट के कुछ उन्नत उपयोग भी हैं जो दिलचस्प उपयोग के मामले बनाते हैं। नमूना तालिका पर विचार करें user_table जहां 5 उपयोगकर्ताओं को अलग-अलग अनुमतियां दी जाती हैं, जैसे कि व्यवस्थापक, सुपरयूज़र, आदि आधारित मान 1 या 0,
mysql> SELECT * FROM user_table; +-----------+----------+--------------+----------+-----------+ | user_id | is_admin | is_superuser | is_staff | is_active | +-----------+----------+--------------+----------+-----------+ | 1 | 1 | 1 | 1 | 1 | | 2 | 0 | 1 | 1 | 1 | | 3 | 0 | 1 | 1 | 1 | | 4 | 0 | 0 | 0 | 1 | | 5 | 0 | 0 | 0 | 0 | +-----------+----------+--------------+----------+-----------+
केस 1 का उपयोग करें:एक से अधिक कॉलम वाले मान की तुलना करने के लिए MySQL IN स्टेटमेंट
इसका सिंटैक्स है:
SELECT * FROM TableName WHERE value IN (column1, column2, column3, column4)
उदा,
mysql> SELECT * FROM user_table WHERE 1 IN (is_admin, is_superuser, is_staff, is_active); +-----------+----------+--------------+----------+-----------+ | user_id | is_admin | is_superuser | is_staff | is_active | +-----------+----------+--------------+----------+-----------+ | 1 | 1 | 1 | 1 | 1 | | 2 | 0 | 1 | 1 | 1 | | 3 | 0 | 1 | 1 | 1 | | 4 | 0 | 0 | 0 | 1 | +-----------+----------+--------------+----------+-----------+
सामान्य IN कथन में केवल एक स्तंभ शामिल होता है कि एकाधिक मानों की तुलना में . किया जा रहा है ।
SELECT * FROM TableName WHERE column1 IN (1,2,3,4)
यह काम करता है
SELECT * FROM TableName WHERE column1 = 1 OR column1 = 2 OR column1 = 3 OR column1 = 4
यह कथन एक VALUE है जो कि एकाधिक स्तंभों की तुलना में . है
SELECT * FROM TableName WHERE 1 IN (column1, column2, column3, column4)
के समान है
SELECT * FROM TableName WHERE column1 = 1 OR column2 = 1 OR column3 = 1 OR column4 = 1
केस 2 का उपयोग करें:एक से अधिक मानों वाले एकाधिक कॉलम की तुलना करने के लिए MySQL IN स्टेटमेंट
इसका सिंटैक्स है:
SELECT * FROM TableName WHERE (column1,column2) in ((value1,value2),(value3,value4),..)
उदा,
mysql> SELECT * FROM user_table WHERE (is_staff,is_admin) in ((1,0),(1,1));
+-----------+----------+--------------+----------+-----------+ | user_id | is_admin | is_superuser | is_staff | is_active | +-----------+----------+--------------+----------+-----------+ | 1 | 1 | 1 | 1 | 1 | | 2 | 0 | 1 | 1 | 1 | +-----------+----------+--------------+----------+-----------+
यह के रूप में काम करता है