当前位置: 代码迷 >> Sql Server >> 查询数据库里最长连续不等于0和999.9的数据
  详细解决方案

查询数据库里最长连续不等于0和999.9的数据

热度:58   发布时间:2016-04-24 08:57:24.0
求助查询数据库里最长连续不等于0和999.9的数据
数据库里是这样的,

我要查询rs里最长连续不等于0和999.9的数据加起来有几行。就是例如,0和999.9是晴天,其他的都有雨,我要查连续降雨日数。
求助这样的查询语句应该怎么写
------解决思路----------------------
;with cte as(
select ID-ROW_NUMBER() over(order by getdate()) as row,ID,RS
from 
(select ID,
case RS
WHEN 0.0 THEN NULL
WHEN 999.9 THEN NULL
ELSE RS
end  AS RS
from @tb) a
where RS is not null
),cte2 as(
select
COUNT(*) over(partition by row) as [连续总计],
ID,RS
from cte
)

select * 
from cte2
where [连续总计]=(select MAX([连续总计]) from cte2)
  相关解决方案