आप यहां ROW_NUMBER() फ़ंक्शन का उपयोग कर सकते हैं:
SELECT *
FROM (SELECT lp.ID, lp.LoanID, lp.PaymentDate
, ROW_NUMBER() OVER (PARTITION BY YEAR(PaymentDate), Month(PaymentDate) ORDER BY PaymentDate DESC) 'RowRank'
FROM LoanPayments lp
)sub
WHERE RowRank = 1
यह प्रत्येक माह के लिए नवीनतम भुगतान दिनांक है, यदि आप इसे LoanID द्वारा चाहते हैं तो आप LoanID को PARTITION BY
में जोड़ देंगे सूची। यदि आप संबंधों को संरक्षित करने में रुचि रखते हैं तो आप RANK()
. का उपयोग कर सकते हैं ROW_NUMBER()
. के बजाय