दिलचस्प पोस्ट
मैं एक क्लास / मिक्सिन का विस्तार कैसे करूं जो कि गतिशील रूप से चयनकर्ता बन गया है लुसेन में क्वेरी स्वत: पूर्णता / सुझाव कैसे करें? टॉमकेट गिस / जेडीबीसी मेमोरी लीक JSON ऑब्जेक्ट नाम / मान तक कैसे पहुंचें? परिभाषित () बनाम const AngularJS गतिशील प्रपत्र क्षेत्र सत्यापन AngularJS: $ संसाधन (समाधान) का उपयोग करके फ़ाइलें अपलोड करें फ़ाइल में एक विशिष्ट पंक्ति को हटाना (अजगर) PHP, कैसे शून्य से एक विभाजन पकड़ने के लिए? मैं चेतावनियों को कैसे ठीक कर सकता हूं: "हस्ताक्षरित और अहस्ताक्षरित के बीच तुलना"? ऑब्जेक्ट्स के 2 एरेज़ मर्ज करें MinGW स्टैटिक लाइब्रेरी (.a) से विजुअल स्टूडियो स्टैटिक लाइब्रेरी (.lib) गैर-अंतिम क्षेत्र का सिंक्रनाइज़ेशन "/ Usr / bin / ld: नहीं मिल सकता- lz" निम्नलिखित वाक्यांशों का क्या अर्थ है सी ++: शून्य-, डिफ़ॉल्ट- और मूल्य-आरंभीकरण?

एसक्यूएल: अधिकतम प्रति समूह का पता लगाएं

संभव डुप्लिकेट:
प्रत्येक समूह में अंतिम रिकॉर्ड प्राप्त करना

मेरे पास एक टेबल है, जिसमें तीन फ़ील्ड और डेटा है

 नाम, शीर्ष, कुल
 बिल्ली, 1, 10
 कुत्ता, 2, 7
 बिल्ली, 3, 20
 घोड़ा, 4, 4
 बिल्ली, 5, 10
 कुत्ता, 6, 9

मैं प्रत्येक Name लिए Total का उच्चतम मूल्य वाला रिकॉर्ड चुनना चाहता हूं, इसलिए मेरा परिणाम इस तरह होना चाहिए:

 नाम, शीर्ष, कुल
 बिल्ली, 3, 20
 घोड़ा, 4, 4
 कुत्ता, 6, 9

मैंने कुल मिलाकर नाम आदेश के द्वारा समूह की कोशिश की, लेकिन परिणाम के आधार पर समूह का सबसे अधिक रिकार्ड दिया। क्या कोई मुझे मार्गदर्शन कर सकता है, कृपया?

वेब के समाधान से एकत्रित समाधान "एसक्यूएल: अधिकतम प्रति समूह का पता लगाएं"

 select Name, Top, Total from sometable where Total = (select max(Total) from sometable i where i.Name = sometable.Name) 

या

 select Name, Top, Total from sometable inner join ( select max(Total) Total, Name from sometable group by Name ) as max on max.Name = sometable.Name and max.Total = sometable.Total 

आप की तरह कुछ कोशिश कर सकते हैं

 SELECT s.* FROM sometable s INNER JOIN ( SELECT Name, MAX(Total) MTotal FROM sometable GROUP BY Name ) sMax ON s.Name = sMax.Name AND s.Total = sMax.MTotal 

या एक मौजूदा धारा का उपयोग करके, जो दोनों तालिकाओं में मौजूद एकमात्र पंक्ति देता है

 SELECT * from sometable T where exists (select 1 from (SELECT nombre, max(total) as total FROM sometable TT GROUP by nombre) TT where T.name=TT.name and T.total=TT.total )