SQL Server:获取每组最新(最新)的日期

时间:2013-11-22 07:26:20

标签: sql-server date group-by maxdate

我有一个SQL表,其列categoryX包含日期(格式:yyyy-mm-dd)。 如何按此列中的类别对表进行分组,并获取每个组的最新(最近)日期?

我正在寻找类似于以下的内容,它只计算每个组的类别 - 而不是计数我想获得每个组的最新日期。

以下是表格和列的详细信息:

ALTER PROCEDURE [dbo].[CountRequests]
AS
BEGIN
    SET NOCOUNT ON;
    SELECT      categoryX,
                COUNT(*) AS categoryCount
    FROM        LogRequests
    WHERE       logStatus = 'active'
    AND         statusSOP != 'Published'
    GROUP BY    categoryX
    ORDER BY    categoryCount desc, categoryX
    FOR XML PATH('categoryX'), ELEMENTS, TYPE, ROOT('ranks')
END

非常感谢您对此的任何帮助

1 个答案:

答案 0 :(得分:3)

您的查询与

类似
SELECT      categoryX,
            MAX(CategoryDate) AS LatestDate
FROM        YourTable
GROUP BY    categoryX