简体   繁体   English

根据SQL中的另一个变量选择最大值

[英]Selecting a Max Value based on another variable in SQL

I am trying to create an accurate count of student enrollment. 我正在尝试准确统计学生人数。 There is an individual record for every course registration and any change to that particular course registration results in another record with an incremental sequence number. 每次课程注册都有一条单独的记录,对该特定课程注册的任何更改都会导致另一条记录的序列号递增。 My table looks something like this: 我的桌子看起来像这样:

ID    Course Number   Sequence Number
1     B101            1
1     B101            2
1     B101            3
1     C201            1
1     C201            2
2     E215            1
2     J320            1
2     J320            2

I would like to select the max value of sequence number such that every course registration is retained. 我想选择序列号的最大值,以便保留每次课程注册。 This would mean that ID 1 would have 2 records. 这意味着ID 1将具有2条记录。 One would be B101 with sequence number=3 and another record for C201 with sequence number=2. 一个是序列号= 3的B101,另一个是序列号= 2的C201记录。

SELECT id, course_number, MAX(sequence_number) FROM table GROUP BY id, course_number;

您应该首先将id上的所有项目分组,然后将它们在Course_Number上分组,并仅显示Sequence_Number的最大值。

select id,Course_Number,max(Sequence_Number) from TblName group by id,Course_Number 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM