qkj666 2019-03-25 10:00 采纳率: 33.3%
浏览 454
已采纳

sqlserver递归查询平均数怎么查

with cte_Assess(id,pid,code,target,score)
as

(

--起始条件

select id,pid,code,target,score
from Assess

where id = 937 --列出子节点查询条件

union all  

--递归条件  
select a.id,a.pid,a.code,a.target,a.score
from Assess a  
inner join   
cte_Assess b          --执行递归
on a.pid=b.id 

)

select * from cte_Assess t;


```我想要的只是拿score的平均数,其他可拿可不
  • 写回答

4条回答 默认 最新

  • 人到中年就秃头 2019-03-25 10:30
    关注
    --获取某层下的所有信息--
    with cte_Assess(id,pid,code,target,score)
    as
    (
    --起始条件
    select id,pid,code,target,score
    from Assess
    where id = 937 --列出子节点查询条件
    union all  
    --递归条件  
    select a.id,a.pid,a.code,a.target,a.score
    from Assess a  
    inner join   
    cte_Assess b          --执行递归
    on a.pid=b.id 
    )
    --求出平均分--
    select avg(score) from cte_Assess
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 sft下载大文阻塞卡死
  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失
  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题
  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 mac电脑,安装charles后无法正常抓包