Hi, I have the following code that is close to working the way I want it to: Dispatch.find(:all, :group => :order_id, :conditions => ["ex_factory_date < ?", (Date.today + 1.month)], :order => :ex_factory_date) So let me quickly explain what is going on. I have orders that have many dispatches. I am trying to make a report so that I find the earliest dispatch of an order and then not to show any more dispatches for that order. So my data is basically like this: Order 1 has 3 Dispatches with the following ex_factory_dates: Dispatch 1 = 12/10/2010 Dispatch 2 = 13/10/2010 Dispatch 3 = 20/10/2010 Order 2 has 2 Dispatches with the following ex_factory_dates: Dispatch 1 = 15/10/2010 Dispatch 2 = 11/10/2010 So in my code I am using :group to ensure the order_id is unique which it does. The only problem is that it seems to only select the last dispatch and I can not think of a way to make it select the dispatch with the earliest ex_factory_date. Hope that makes sense and any help much appreciated. I may be going about this the wrong way not sure. Thanks. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.