MySQL में सबक्वेरी के साथ एक कॉलम के अधिकतम मान को सभी पंक्तियों के लिए चयन करना
स्केलर सबक्वेरी (SELECT MAX(Score) FROM DemoTable) का उपयोग SELECT सूची में करके, प्रत्येक पंक्ति के लिए उस कॉलम का अधिकतम मान प्रदर्शित किया जा सकता है।
व्यावहारिक उदाहरण
तालिका बनाना
mysql> CREATE TABLE DemoTable (
FirstName VARCHAR(100),
Score INT
);
रिकॉर्ड डालना
mysql> INSERT INTO DemoTable VALUES('David', 59);
mysql> INSERT INTO DemoTable VALUES('Chris', 97);
mysql> INSERT INTO DemoTable VALUES('Bob', 98);
mysql> INSERT INTO DemoTable VALUES('Carol', 91);
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+-----------+-------+ | FirstName | Score | +-----------+-------+ | David | 59 | | Chris | 97 | | Bob | 98 | | Carol | 91 | +-----------+-------+
प्रत्येक पंक्ति के लिए अधिकतम स्कोर दिखाने के लिए क्वेरी
mysql> SELECT FirstName, (SELECT MAX(Score) FROM DemoTable) AS Score FROM DemoTable;
आउटपुट:
+-----------+-------+ | FirstName | Score | +-----------+-------+ | David | 98 | | Chris | 98 | | Bob | 98 | | Carol | 98 | +-----------+-------+
व्याख्या
- सबक्वेरी
(SELECT MAX(Score) FROM DemoTable)एकल मान (98) लौटाता है - यह मान मुख्य क्वेरी की प्रत्येक पंक्ति के लिए दोहराया जाता है
- मूल Score कॉलम छिप जाता है (एलियास Score से)
वैकल्पिक तरीके