When you use find with the :all condition you are always returned an array.
The returned array is a collection of Active Record objects or the resulting models from the database.
@users = User.find(:all, :conditions => [ “user_id = ?”, val ])
To get the first
To get the last
To go through each of them
@users.each do |user|
If your only after the first one then instead of using the :all option user the :first option. Instead of retuurning an array this will return an individual record as an ActiveRecord instance.