I think the core of the issue is that your portal is based on the groupline record items so you can filter by band, etc, and be able to pull a student up in more than one group, if they have multiple entries in groupline.
However, you want unique and complete set of students if there are no group/band filters selected, correct? In that case, to show a list of all unique students, you probably need to display a different portal based on the Student table. And then use two layouts and script triggers.
Trigger on the filter selection. If there are no groups selected, show the layout with the student portal. If there are groups selected, show with the groupline detail portal.
There might be more elegant solutions but I think that would work. The drawback is you have to manage design on multiple layouts, so if you change navigation or anything else on layout, you have to duplicate the changes on the layout with student portal.
Just use a filter relationship as you have been doing... but make the match to a calculation field which adds "¶All" at the end of the group(s) in the selected group list.
You can click "All" or enter criteria to match.
Thanks for your help. I have it set up to show all now, but because of my relationship, it only shows students who are in a group (students in the grouplineitem table) I would love for it to show me all the students who are in the student table even if they are not in a group.
I thought of another possibility...
Can I create a self joining student table relationship so the navigational portal will always show me the found set students? If so, I could create a trigger that would find students in a group. I tried a self joining relationship, but it does not show the found set results.