sql >> Databáze >  >> RDS >> Sqlserver

Získejte poslední záznam z každého měsíce

Zde můžete použít funkci 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

To je jen poslední datum platby za každý měsíc, pokud byste to chtěli pomocí LoanID, přidali byste LoanID do PARTITION BY seznam. Pokud byste měli zájem o zachování vazeb, můžete použít RANK() místo ROW_NUMBER()



  1. Jak zobrazit více dotazů a výsledků vedle sebe v SQL Server Management Studio (SSMS) – SQL Server / Výukový program TSQL, část 14

  2. pokud neexistuje SQL Statement Giving Error

  3. Použití ODBC se Salesforce a Azure Active Directory (AD) Single Sign On (SSO)

  4. Jak mohu opravit tuto smyčku pro zobrazení obrázků z mé databáze pomocí bootstrap carousel