सबक्वेरी का उपयोग करके, आप उच्चतम id
प्राप्त कर सकते हैं प्रत्येक नाम के लिए, फिर उसके आधार पर शेष पंक्तियों का चयन करें:
SELECT * FROM table
WHERE id IN (
SELECT MAX(id) FROM table GROUP BY name
)
यदि आप चाहें, तो MIN(id)
का उपयोग करें अंतिम के बजाय प्रत्येक नाम के लिए पहला रिकॉर्ड प्राप्त करने के लिए।
इसे INNER JOIN
. के साथ भी किया जा सकता है सबक्वेरी के खिलाफ। इस उद्देश्य के लिए प्रदर्शन समान होना चाहिए, और कभी-कभी आपको दो . पर शामिल होने की आवश्यकता होती है सबक्वेरी से कॉलम।
SELECT
table.*
FROM
table
INNER JOIN (
SELECT MAX(id) AS id FROM table GROUP BY name
) maxid ON table.id = maxid.id