आपको या तो ग्रुप बाय क्लॉज या अधिक जटिल क्वेरी की आवश्यकता है।
SELECT field1, MAX(updated_date)
FROM mytable
GROUP BY field1
नमूना डेटा के लिए, यह 3 पंक्तियाँ लौटाएगा।
अधिक संभावना है, आप चाहते हैं:
SELECT t1.field1, t3.max_date
FROM mytable AS t1
JOIN (SELECT MAX(t2.updated_date) AS max_date
FROM mytable AS t2
) AS t3
ON t1.updated_date = t3.max_date;
नमूना डेटा के लिए, यह 1 पंक्ति लौटाएगा:
ta3 2012-03-11 11:05:56
प्रमुख डीबीएमएस में से, केवल MySQL आपको ग्रुप बाय क्लॉज को छोड़ने की अनुमति देता है जब आपके पास चयन-सूची में एग्रीगेट और गैर-एग्रीगेट कॉलम का मिश्रण होता है। SQL मानक के लिए GROUP BY क्लॉज की आवश्यकता होती है और आपको इसमें सभी गैर-एग्रीगेट कॉलम सूचीबद्ध करने होंगे। कभी-कभी, MySQL में, GROUP BY क्लॉज को छोड़ने से वह उत्तर मिलता है जो आप चाहते हैं; हालांकि, जितनी बार नहीं, यह एक अप्रत्याशित उत्तर देने का प्रबंधन करता है।