sas - SAS PROC SQL 提取与第二个变量的值关联的变量
问题描述
我对 PROC SQL 比较陌生。我搜索了 SO 和其他地方,但没有找到任何可以解决我的问题的东西。
我正在处理学生转学成绩信息。学生(超出您的预期)多次参加课程。我正在尝试从数据集中提取他们获得的最佳成绩以及他们获得最佳成绩的学期。我能够用 min(grade) 语句提取最好的成绩。但是,我很难理解这个术语。下面是我所拥有的。它返回所有术语,而不是与最低成绩关联的术语。
proc sql;
create table MATH_2413_trm as
select ID as ID, Math_TRNS_2413_Term as Math_TRNS_2413_Term
from work.Engr2
group by ID
having min(Math_TRNS_2413_Best_Grade)
order by ID;
quit;
我哪里错了?
谢谢你,布赖恩
解决方案
正如@Reeza 解释的那样,最好在过程摘要中做。你很接近 sql 代码,只是错过了在有子句中提到等级 =min(grade) 。
data have;
input id term grade $ ;
datalines;
113 2 B
113 1 A
113 3 C
111 2 B
111 1 A
111 3 C
112 1 B
112 2 A
112 3 C
;
proc sql;
create table want as
select * from
have
group by id
having grade = min(grade);
推荐阅读
- orbeon - 以 orboen 形式在数据库中为 datepicker 存储禁用日期
- regex - 正则表达式从中获取价值
通过对值断言条件 - java - 我可以强制使用具有泛型但在方法定义类型中的方法参数吗?
- java - 如何在java中动态创建pkpass文件?
- angularjs - Angularjs 渲染外部 HTML
- html - 如何确定活动选项卡的名称并将其绑定到 Angular 中的属性?
- spring - Spring Boot JPA 中的全文搜索
- angular - 在模块导航上,模块样式混合
- flutter - Flutter:确定Dialog何时成功呈现
- python - 斜线的形态闭合