it the ranges are fixed, you could use a formula that groups on range, but they are not, which makes it harder.
is there an identifier in the materialpricing table to tell us the grouping? Let's say that the lowest group is identified as 1, and the second as 2, and so on. Then we could create formulae to display only the value based on the ID, and we could place these in a group footer.
If there isn't a identifier in the data, and you get the data via a stored proc, you could create one. My first thought is to get all the data in a temp table, and then to take the MIN value by matid and insert into a 2nd temp table with the ID number (1,2,3...), then delete them from the first temp table. Repeat until all data in temp table1 is gone.
Hope some of this helps