# Find the 3 newest rows in the database

**URL:** <https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234>\
**Category:** Ruby\
**Created:** [May 2, 2006, 6:33am UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234 "2006-05-02T06:33:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 2, 2006, 6:33am UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/1 "2006-05-02T06:33:28Z")

</div>

Hi,

I have an Adverts table with a created\_at column. I would like to get  
back the 3 newest adverts. How would I do this.

Thanks

David

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 2, 2006, 6:58am UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/2 "2006-05-02T06:58:11Z")

</div>

david wrote:

> I have an Adverts table with a created\_at column. I would like to get  
> back the 3 newest adverts. How would I do this.

This depends on what you’re using, but it’s a relatively simple SQL  
statement:

SELECT \*  
FROM adverts  
ORDER BY created\_at DESC  
LIMIT 3;

Are you using DBI? Straight SQL? ActiveRecord? Og?

Pistos

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 2, 2006, 7:05am UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/3 "2006-05-02T07:05:26Z")

</div>

Pistos C. wrote:

> david wrote:
> 
> > I have an Adverts table with a created\_at column. I would like to get  
> > back the 3 newest adverts. How would I do this.
> 
> This depends on what you’re using, but it’s a relatively simple SQL  
> statement:
> 
> SELECT \*  
> FROM adverts  
> ORDER BY created\_at DESC  
> LIMIT 3;
> 
> Are you using DBI? Straight SQL? ActiveRecord? Og?
> 
> Pistos

ActiveRecord

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 2, 2006, 8:44am UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/4 "2006-05-02T08:44:30Z")

</div>

david wrote:

> Pistos C. wrote:
> 
> > david wrote:
> > 
> > > I have an Adverts table with a created\_at column. I would like to get  
> > > back the 3 newest adverts. How would I do this.
> > 
> > This depends on what you’re using, but it’s a relatively simple SQL  
> > statement:
> > 
> > SELECT \*  
> > FROM adverts  
> > ORDER BY created\_at DESC  
> > LIMIT 3;
> > 
> > Are you using DBI? Straight SQL? ActiveRecord? Og?
> > 
> > Pistos
> 
> ActiveRecord

find(:all, :limit =\> 3, :order =\> ‘created\_at DESC’)

Check out the Rails mailing list, it would be better to ask these sort  
of questions there.

j`ey  
[http://www.eachmapinject.com](http://www.eachmapinject.com)

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 3, 2006, 6:59pm UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/5 "2006-05-03T18:59:13Z")

</div>

use SQL of

SELECT \* FROM Adverts ORDER BY created\_at DESC LIMIT = 3;

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [May 3, 2006, 6:59pm UTC](https://www.ruby-forum.com/t/find-the-3-newest-rows-in-the-database/59234/6 "2006-05-03T18:59:13Z")

</div>

Advert.find(:all, :order =\> “created\_at DESC”, :limit =\> 3)
