Wow! That's an 'old' version. If I remember correctly v2 was a 'flat file', that is non-relational. You could add another calculation field and by using the current date and the last donation date help you to set a flag. You could then search on the flag and get your 'group'.
I'm not sure what Date calculations were available in v2 or how date calculations were handled so your calculation would be in words:
Your new field as a number: Donated = if (Take the current date and subtract the last donation date and if it is less than 1865 then it is newer than 5 years if that is true then set the field to 1 otherwise leave it empty (I just used 5 yrs x 364 days plus an extra 1 for one leap year)
As a formula
Donated = If ( CurrentDate - YourDonationDateField < 1821 ; 1 ; "" )
where a 1 would be the 'flag' inserted into the Donated field if the calculation is true and leaves it empty if false. Then by finding all records where Donated = 1 you have your records 'grouped'.
Not sure if you have global fields in v2 but you could put the Current Date (or any other date) as a global which would allow you to more flexibly find different 5 year date ranges. You could also use a global field for the number of years to go back as well e.g. 365 for 1; 730 for 2 etc.. which would be even more flexible. The Donated field would have to be set up to automatically re-calculate when necessary.
The formula would look more like:
Donated = If (global CurrentDate - Your DonationDateField < global Number of Days ; 1 ; "" )
Not sure if this is your question and whether 2.0 was a typo and you meant 12.0 which means a much different answer.