これは、累積合計を使用するための適切な使用例です。
行の順序が列sem
によって明確に定義されていると仮定します およびsubjectcode
、クエリが示すように、次のようにクエリを記述できます。
select *
from (select t.*,
sum(t.credit) over (order by t.sem, t.subjectcode) as credit_sum
from studyplan t
where t.matricsno = 'D031310087')
where credit_sum <= 20 -- adjust to desired number of credits
order by sem, subjectcode