पहले दो उच्चतम कॉलम प्राप्त करने के लिए ORDER BY का उपयोग करें। इसके साथ LIMIT 2 का उपयोग करके केवल पहले 2 प्राप्त करें।
SELECT * FROM yourTableName ORDER BY yourColumnName DESC LIMIT 2;
टेबल बनाएं
mysql> create table DemoTable (
-> Value int
-> );
Query OK, 0 rows affected (0.54 sec)
रिकॉर्ड्स डालें
mysql> insert into DemoTable values(90); Query OK, 1 row affected (0.18 sec) mysql> insert into DemoTable values(70); Query OK, 1 row affected (0.28 sec) mysql> insert into DemoTable values(40); Query OK, 1 row affected (0.14 sec) mysql> insert into DemoTable values(120); Query OK, 1 row affected (0.13 sec) mysql> insert into DemoTable values(98); Query OK, 1 row affected (0.15 sec) mysql> insert into DemoTable values(105); Query OK, 1 row affected (0.19 sec)
सभी रिकॉर्ड्स देखें
mysql> select * from DemoTable;
+-------+ | Value | +-------+ | 90 | | 70 | | 40 | | 120 | | 98 | | 105 | +-------+ 6 rows in set (0.00 sec)
पहले दो उच्चतम कॉलम मान प्राप्त करने का क्वेरी
mysql> select * from DemoTable order by Value DESC LIMIT 2;
आउटपुट:
+-------+ | Value | +-------+ | 120 | | 105 | +-------+ 2 rows in set (0.00 sec)
मुख्य बिंदु:
ORDER BY Value DESC- अवरोही क्रम (सबसे बड़ा पहले)LIMIT 2- केवल पहली 2 पंक्तियांLIMIT nशीर्ष n रिकॉर्ड्स के लिए- टाई होने पर परिणाम अनिश्चित हो सकता है, टाई-ब्रेकर के लिए दूसरा कॉलम जोड़ें