sql语句

chestnut 2014-06-07 09:59:40

规则:算15天 生产数据 的均值,
满足两层计算:
1、第1天到第5天的值中des为‘不合格’ 的剔除计算,算这5天的num的平均值value_5,若desc为‘不合格’> 2天 ,则value_5为null值;
第2天到第6条的值中des为‘不合格’ 的剔除计算,算这5天的num的平均值value_6,若desc为‘不合格’> 2天 ,则value_6为null值;
第3天到第7条的值中des为‘不合格’ 的剔除计算,算这5天的num的平均值value_7,若desc为‘不合格’> 2天 ,则value_7为null值;
第4天到第8条的值中des为‘不合格’ 的剔除计算,算这5天的num的平均值value_8,若desc为‘不合格’> 2天 ,则value_8为null值;
第5天到第9条的值中des为‘不合格’ 的剔除计算,算这5天的num的平均值value_9,若desc为‘不合格’> 2天 ,则value_9为null值;
... 一直算到value_15
2、取value_5到value_15 这11数值,如果null>4个,则返回null;其他返回这11个值的均值。
数据如下:
create table #tb(
id int identity(1,1),
Dates datetime,
num int,
des varchar(10)
)
go

insert into #tb(Dates,num,des)
select dateadd(day,-1*number,'2014-06-15'),number*100,case when number between 7 and 10 then '不合格' else '' end
from master.dbo.spt_values where type='P' and number between 0 and 14
go

求sql语句解决的方法,最后是不要使用到参数,直接是select 解决。
...全文
75 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧