如何进行 SQL 查询以从交易 table 中检索每年的所有最后交易

How to make SQL query to retrieve all last transactions for every year from a transaction table

我有一个 table 用于记录所有交易以及交易日期和其他详细信息。我需要一个 sql 语句来检索每年的所有最后交易,特别是每年的最后交易日期。我正在使用 MSSQL 2014 例如,如果我的记录从 01/01/2000 开始,我需要获取从 01/01/2000 到现在的所有交易的最后日期。

示例预期结果:

TransactionDate
--------------------
12/31/2000
12/29/2001
12/30/2002
12/31/2003
.
.
.
12/30/2021

尝试使用 DATEPART 将 TransactionDate 分成一年。一旦你有了它,你可以 select max TransactionDate 并按年分组,以获得每年的最后一笔交易

看起来像这样……

SELECT LastTransactionDateOfYear
FROM (
    SELECT DATEPART(year,TransactionDate),
        MAX(TransactionDate) LastTransactionDateOfYear
    FROM <yourtable>
    GROUP BY DATEPART(year,TransactionDate)
)