# How do you order by two conditions?

**URL:** <https://www.ruby-forum.com/t/how-do-you-order-by-two-conditions/112968>\
**Category:** Rails\
**Created:** [August 25, 2007, 1:29am UTC](https://www.ruby-forum.com/t/how-do-you-order-by-two-conditions/112968 "2007-08-25T01:29:56Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![adistarmid](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f14d63/32.png) [@adistarmid](https://www.ruby-forum.com/u/adistarmid)\
**Post date:** [August 25, 2007, 1:29am UTC](https://www.ruby-forum.com/t/how-do-you-order-by-two-conditions/112968/1 "2007-08-25T01:29:56Z")

</div>

For instance, if I wanted to order by “created\_at”, then order that  
again by “last\_contacted”, how would I do so?

I tried something like this, but unfortunately didn’t work: :order =\>  
‘created\_date DESC, last\_contacted ASC’

Any ideas?

---

<div class="post-metadata">

**Author:** ![adistarmid](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f14d63/32.png) [@adistarmid](https://www.ruby-forum.com/u/adistarmid)\
**Post date:** [August 25, 2007, 1:32am UTC](https://www.ruby-forum.com/t/how-do-you-order-by-two-conditions/112968/2 "2007-08-25T01:32:07Z")

</div>

On 8/24/07, Bob S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> >

erm, it didn’t? Did you get an error or did it just not return the  
records in the order you expected? Because that looks like it should  
work fine…

Pat

---

<div class="post-metadata">

**Author:** ![adistarmid](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/f14d63/32.png) [@adistarmid](https://www.ruby-forum.com/u/adistarmid)\
**Post date:** [August 28, 2007, 1:25am UTC](https://www.ruby-forum.com/t/how-do-you-order-by-two-conditions/112968/3 "2007-08-28T01:25:42Z")

</div>

I’m assuming that you meant to write:

:order =\> “created\_at DESC, last\_contacted ASC”

Instead of

:order =\> “created\_date DESC, last\_contacted ASC”

But, other than that it looks fine. You could even drop the ASC if  
you want, since that’s the default in SQL.

:order =\> “created\_at DESC, last\_contacted”
