根据"列"中的"最大值"返回另一个列值



我想从一个基于多个其他列的列中获取一个值。我相信这并没有那么难,我不知道该怎么做。这是我从中提取数据的表格。

术语名称通过核心>第2学期2022年4月1日>进度2022年2月1日>第二学期进度2022年1月21日<1>第2学期2022年1月21日英语I进度2021年12月17日第二学期第2学期进度2022年1月22日<1>几何进度2021年12月15日几何第2学期2022年1月12日几何结构进度2022年1月25日几何第2学期2022年1月31日第1学期2022年6月1日进度//tr>第二学期进度2022年1月25日<1>
personid 课程名称任务日期
1 12346代数I第1学期1
2 12346代数I第1学期
3 12346代数I第2学期
4 12346 代数I 第2学期
5 12346 英语I 第1学期
6 13456第1学期
7 12346 英语I 第2学期
8 12346 英语I
9 456255第1学期
10 456255第1学期
11 456255第2学期0
12 456255第1学期
13 456255 物理1 第2学期
14 456255 物理1 第2学期2021年12月
15 456255 物理1 第2学期
16 456255 物理1 第2学期

您正在查找每个组的最新行,您可以使用row_number

select t.personid, t.coursename, t.termname, t.Passingscore
from (
select *, 
Row_Number() 
over (partition by personID, courseName, termName order by [date] desc) rn
from t
)t
where rn=1;

相关内容

最新更新