आइए समझते हैं कि MySQL में किसी विशिष्ट कॉलम का ग्रुप-वाइज अधिकतम मान रखने वाली रो कैसे खोजें:
MySQL में किसी विशिष्ट कॉलम का ग्रुप-वाइज अधिकतम मान रखने वाली रो खोजने का सिंटैक्स इस प्रकार है:
SELECT colName1, colName2, colName3 FROM tableName s1 WHERE colName3=(SELECT MAX(s2.colName3) FROM tableName s2 WHERE s1.colName1= s2.colName1) ORDER BY colName1;
मान लीजिए हमारे पास निम्न PRODUCT टेबल है:
<PRODUCT>
+---------+----------+--------+ | Article | Warehouse| Price | +---------+----------+--------+ | 1 | North | 255.50 | | 1 | North | 256.05 | | 2 | South | 90.50 | | 3 | East | 120.50 | | 3 | East | 123.10 | | 3 | East | 122.10 | +---------+----------+--------|
निम्न क्वेरी है:
क्वेरी
SELECT Article, Warehouse, Price FROM Product p1 WHERE Price=(SELECT MAX(p2.Price) FROM Product p2 WHERE p1.Article= p2.Article) ORDER BY Article;
आउटपुट
+-------------+----------------+------------+ | Article | Warehouse | Price | +-------------+----------------+------------+ | 0001 | North | 256.05 | | 0002 | South | 90.50 | | 0003 | East | 123.10 | +-------------+----------------+------------+
उपरोक्त क्वेरी ने एक कोरिलेटेड सबक्वेरी का उपयोग किया।