wanna make a catalog list

Hi All, I have a model called colleges, that contains college name, speciality, location, articles on colleges, etc. So, I want to create a catalog for users to browse.

I want a listing based on location, speciality, name, etc. And want to display articles related to these fields. If I do a SELECT DISTINCT, everytime I display the page, this will take query all the fields and it takes time.

In the sense, i am doing @colleges = College.find(:all, :select=>"DISTINCT location")

Is there a better way of doing this? Should I have a seperate table for the statistics? Please help me with this.

Thnx,