# Order + find query

**URL:** <https://www.ruby-forum.com/t/order-find-query/145623>\
**Category:** Rails\
**Created:** [August 12, 2008, 8:35am UTC](https://www.ruby-forum.com/t/order-find-query/145623 "2008-08-12T08:35:03Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![prionko](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/5f9b8f/32.png) [@prionko](https://www.ruby-forum.com/u/prionko)\
**Post date:** [August 12, 2008, 8:35am UTC](https://www.ruby-forum.com/t/order-find-query/145623/1 "2008-08-12T08:35:03Z")

</div>

Hi,  
I have got a table which has many field, one of them is updated\_at.

Can anybody tell me how to get the value of a row which has been updated  
recently.

-Thanks

Saurav

---

<div class="post-metadata">

**Author:** ![prionko](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/5f9b8f/32.png) [@prionko](https://www.ruby-forum.com/u/prionko)\
**Post date:** [August 12, 2008, 12:24pm UTC](https://www.ruby-forum.com/t/order-find-query/145623/2 "2008-08-12T12:24:21Z")

</div>

I have written this query for my existing table Status. Its working  
fine.

Status.find\_by\_sql(“select \* from statuses where document\_id  
=’#{self.id}’ and status=‘REVIEWED’ and updated\_at = ( select  
max(updated\_at) from statuses)”)

Can anybody suggest how can i write it using only the find method in  
rails ?

-Saurav

Saurav C. wrote:

> Hi,  
> I have got a table which has many field, one of them is updated\_at.
> 
> Can anybody tell me how to get the value of a row which has been updated  
> recently.
> 
> -Thanks
> 
> Saurav

---

<div class="post-metadata">

**Author:** ![prionko](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/5f9b8f/32.png) [@prionko](https://www.ruby-forum.com/u/prionko)\
**Post date:** [August 12, 2008, 4:49pm UTC](https://www.ruby-forum.com/t/order-find-query/145623/3 "2008-08-12T16:49:37Z")

</div>

Saurav C. wrote:

> I have written this query for my existing table Status. Its working  
> fine.
> 
> Status.find\_by\_sql(“select \* from statuses where document\_id  
> =’#{self.id}’ and status=‘REVIEWED’ and updated\_at = ( select  
> max(updated\_at) from statuses)”)

@status = Status.find(:all, :conditions =\> [‘document\_id = ? and status  
= ? and updated\_at = (select max(updated\_at) from statuses)’, self.id,  
‘REVIEWED’]

I have no way to test it, but I think that would be the way to do it.

-S
