ROW_NUMBER
का उपयोग करें :
SELECT account, "date", "value"
FROM
(SELECT
account, "date", "value",
ROW_NUMBER() OVER (PARTITION BY account ORDER BY "date" DESC) rn
FROM yourTable
) t
WHERE rn=1;
ध्यान दें कि @NiVeR द्वारा दिया गया अब हटाया गया उत्तर पर्याप्त होगा यदि हम केवल प्रत्येक खाते के लिए अधिकतम तिथि चाहते हैं। यदि हमें प्रत्येक रिकॉर्ड से मूल्य, या सामान्य रूप से अन्य स्तंभों की भी आवश्यकता है, तो हमें एक अतिरिक्त जुड़ाव करना होगा, या पंक्ति संख्या का उपयोग करना होगा जैसा कि मैंने ऊपर किया है।
देखें SQL Fiddle पर डेमो ।