总结连续的日期,开始和结束的块日期

问题描述:

我有一个数据库(SQL 2014),它包含以下项目:总结连续的日期,开始和结束的块日期

Name Date 
John 02/02/2017 
John 03/02/2017 
John 04/02/2017 
John 13/03/2017 
John 14/03/2017 

这些条目所代表缺勤块 - 这可能是每一个短短的一天时间或几天的块(可能会在一个块内进行月份转换)。

我想如下总结这些数据:

Name MinDate  MaxDate 
John 02/02/2017 04/02/2017 
John 13/03/2017 14/03/2017 

其中输出包含的每个块(与天缺席的数目,这将是直接的一起)的第一天和最后一天。

+5

您的逻辑是不明确的。另外,使用您正在使用的数据库标记。 –

+2

请说明逻辑。每块连续日期(2月2日至4日,3月13日至14日)是否为一行?或者是每月最低/最高?每个月可以有多个这样的区块吗? –

+1

另外它被认为很好显示你的尝试 –

使用YEARMONTH

SELECT 
    T.Name, 
    MIN(T.Date) MinDate, 
    MAX(T.Date) MaxDate 
FROM 
    Tbl T 
GROUP BY 
    T.Name, 
    YEAR(T.Date), 
    MONTH(T.Date)