On 10 May 2010 10:09, Sebastian Kranz <[email protected]> wrote:
> how can I get the last entry (max published_at) for each author
> The result should be a array with news items 1,4,7

Have you looked at using the "group_by" method of Enumberable?

http://apidock.com/rails/Enumerable/group_by

You could use it to group by author_id and then select the latest
entry from each array.


In raw SQL:
  SELECT id, author_id, max(published_at) FROM 'entries group by user_id

Or in Rails finder:
  Entry.all(:select => "*, max(published_at)", :group => :author_id)


Have you read the ActiveRecord API docs? It's all in there....

-- 
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 [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to