-1
guys,SAS proc SQL嵌套功能
我的目标很简单。首先计算组的数量(surgid),然后得到每组中的平均值。我尝试了两个SQL,但都没有成功。徘徊谁知道我应该如何嵌套代码?
感谢, 安德烈
首先尝试:
proc sql;
create table bhr_surg as
select a.*, mean(b.numsurg) as meansurg from bhr as a,
(select count(b.surgid) as numsurg from bhr as b)
where surgid not in (1,2,3,7777)
group by surgid,procyr;
quit;
第二个尝试:
proc sql;
create table bhr_surg as
select *, count(surgid) as numsurg, mean(calculated numsurg) as meansurg from bhr
where surgid not in (1,2,3,7777)
group by surgid,procyr;
quit;
bhr中的列是什么?当你说它不起作用时,错误信息是什么?更好的是,请提供一个使用sashelp库作为示例数据的独立示例。 – Snorex
在第一个例子中“from bhr as a”不是有效的语法。 FROM子句中的别名使用类似“from bhr a”(no“as”)的语法 – Snorex
嗨,Snorehorse,在第一个示例中,有两个错误。首先是“在相关名称B标识的表/视图中找不到列numsurg”。其次是“MEAN汇总功能需要数字参数。”我认为第二个是因为第一个。 “as”在这里并不重要。我删除“as”,同样的错误。数据非常简单,surgid是外科医生身份证。我想在不同年份(procyr)统计每位外科医生(生殖器)。 – Andrea