मानों की सूची क्वेरी करने के लिए IN ऑपरेटर का उपयोग करें।
सिंटैक्स
SELECT * FROM yourTableName WHERE yourColumnName IN(Value1, Value2, ... N) ORDER BY FIELD(yourColumnName, Value1, Value2, ... N);
उदाहरण के साथ समझें
सबसे पहले एक टेबल बनाते हैं:
mysql> CREATE TABLE ListOfValues (
-> Id INT NOT NULL AUTO_INCREMENT,
-> Name VARCHAR(30),
-> Age INT,
-> PRIMARY KEY(Id)
-> );
Query OK, 0 rows affected (0.72 sec)
रिकॉर्ड डालें
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('Carol', 23);
Query OK, 1 row affected (0.14 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('Bob', 25);
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('Sam', 26);
Query OK, 1 row affected (0.16 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('John', 20);
Query OK, 1 row affected (0.37 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('Mike', 28);
Query OK, 1 row affected (0.13 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('David', 27);
Query OK, 1 row affected (0.21 sec)
mysql> INSERT INTO ListOfValues(Name, Age) VALUES('Larry', 21);
Query OK, 1 row affected (0.20 sec)
सभी रिकॉर्ड देखें
mysql> SELECT * FROM ListOfValues;
आउटपुट
+----+-------+------+ | Id | Name | Age | +----+-------+------+ | 1 | Carol | 23 | | 2 | Bob | 25 | | 3 | Sam | 26 | | 4 | John | 20 | | 5 | Mike | 28 | | 6 | David | 27 | | 7 | Larry | 21 | +----+-------+------+ 7 rows in set (0.00 sec)
Age कॉलम के आधार पर मानों की सूची क्वेरी करें
mysql> SELECT * FROM ListOfValues
-> WHERE Age IN(20, 21, 23, 25, 26, 27, 28)
-> ORDER BY FIELD(Age, 20, 21, 23, 25, 26, 27, 28);
आउटपुट
+----+-------+------+ | Id | Name | Age | +----+-------+------+ | 4 | John | 20 | | 7 | Larry | 21 | | 1 | Carol | 23 | | 2 | Bob | 25 | | 3 | Sam | 26 | | 6 | David | 27 | | 5 | Mike | 28 | +----+-------+------+ 7 rows in set (0.06 sec)
IN ऑपरेटर के साथ ORDER BY FIELD() का उपयोग करके रिजल्ट को IN लिस्ट में दिए गए क्रम में सॉर्ट किया गया।