私はテーブルAccess
を含むデータベースを持っていGrads
ます:
Grads
- studentId
- courseId
- tryNumber
- semesterId
- finalGrad
studentName, courseName, courseId, finalGrade
max tryNumber
(last try)の行からすべての情報()を取得するにはどうすればよいですか?
私はテーブルAccess
を含むデータベースを持っていGrads
ます:
Grads
- studentId
- courseId
- tryNumber
- semesterId
- finalGrad
studentName, courseName, courseId, finalGrade
max tryNumber
(last try)の行からすべての情報()を取得するにはどうすればよいですか?
trynumberを含む 1 つの行のみが必要な場合はmax
、次を使用できるはずです。
select g.studentid,
g.courseid,
g.trynumber,
g.semesterid,
g.finalgrade
from grads g
inner join
(
select max(tryNumber) MaxTry
from grads
) m
on g.trynumber = m.maxtry
を使用して各生徒を返したい場合はmax(tryNumber)
、次を使用できます。
select g.studentid,
g.courseid,
g.trynumber,
g.semesterid,
g.finalgrad
from grads g
inner join
(
select studentid, max(tryNumber) MaxTry
from grads
group by studentid
) m
on g.trynumber = m.maxtry
and g.studentid = m.studentid
これはあなたのために働くはずです:
SELECT studentName,
courseName, couseId,
finalGrade, MAX(tryNumber)
FROM grads
GROUP BY studentName, courseName, couseId, finalGrade
以下を使用できます。
Select studentName, courseName, courseId, finalGrade From Grads
Where tryNumber=(Select MAX(tryNumber) From Grads)
select top 1 * from Grads order by tryNumber desc