IN() क्लॉज और अंडरस्कोर वाले मान
जब कॉलम मानों में अंडरस्कोर (_) होता है, तो IN() ऑपरेटर सटीक मिलान करता है। यह वाइल्डकार्ड की तरह व्यवहार नहीं करता।
तालिका निर्माण और डेटा प्रविष्टि
mysql> CREATE TABLE DemoTable1363 (
-> StudentId VARCHAR(20)
-> );
Query OK, 0 rows affected (0.57 sec)
mysql> INSERT INTO DemoTable1363 VALUES('901');
Query OK, 1 row affected (0.20 sec)
mysql> INSERT INTO DemoTable1363 VALUES('702');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable1363 VALUES('901_John_Doe');
Query OK, 1 row affected (0.10 sec)
mysql> INSERT INTO DemoTable1363 VALUES('1001_Carol_Taylor');
Query OK, 1 row affected (0.26 sec)
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable1363;
+-------------------+
| StudentId |
+-------------------+
| 901 |
| 702 |
| 901_John_Doe |
| 1001_Carol_Taylor |
+-------------------+
4 rows in set (0.00 sec)
IN() क्वेरी का उपयोग
mysql> SELECT * FROM DemoTable1363 WHERE StudentId IN('702','1001');
परिणाम
+-----------+
| StudentId |
+-----------+
| 702 |
+-----------+
1 row in set (0.00 sec)
व्याख्या: '1001' का मिलान '1001_Carol_Taylor' से नहीं होता क्योंकि IN() सटीक स्ट्रिंग मिलान करता है। अंडरस्कोर यहां सामान्य वर्ण है, वाइल्डकार्ड नहीं।