попробуйте следующее решение,
сократите набор данных, используемый идентификатором студента в запросе SQL, следующим образом,
SELECT student_details.student_id, student_details.student_name, student_results.subject, student_results.grade FROM student_details INNER JOIN student_results ON student_details.student_id = student_results.student_id ORDER BY student_details.student_id
создайте группу на основе поля student_id
и установите isStartNewPage
свойство true,
поле student_id
<field name="student_id" class="java.lang.Integer">
......
</field>
группа student_id
<group name="student_id" isStartNewPage="true">
<groupExpression><![CDATA[$F{student_id}]]></groupExpression>
</group>