How to get count of consecutive dates

前端 未结 3 1354
眼角桃花
眼角桃花 2021-01-04 14:35

For example there is some table with dates:

2015-01-01
2015-01-02
2015-01-03
2015-01-06
2015-01-07
2015-01-11

I have to write ms sql query,

3条回答
  •  情歌与酒
    2021-01-04 14:54

    CREATE TABLE #T ( MyDate DATE) ;
    INSERT #T VALUES ('2015-01-01'),('2015-01-02'),('2015-01-03'),('2015-01-06'),('2015-01-07'),('2015-01-11')
    
    SELECT 
        RW=ROW_NUMBER() OVER( PARTITION BY GRP  ORDER BY MyDate) ,MyDate
    FROM
    (
    SELECT 
        MyDate, DATEDIFF(Day, '1900-01-01' , MyDate)- ROW_NUMBER() OVER( ORDER BY MyDate ) AS GRP
    FROM #T 
    ) A
    
    DROP TABLE #T;
    

提交回复
热议问题