# Help with find in activerecord

**URL:** <https://www.ruby-forum.com/t/help-with-find-in-activerecord/89263>\
**Category:** Rails\
**Created:** [March 19, 2007, 4:50am UTC](https://www.ruby-forum.com/t/help-with-find-in-activerecord/89263 "2007-03-19T04:50:51Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![jack.tang](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8797f3/32.png) [@jack.tang](https://www.ruby-forum.com/u/jack.tang)\
**Post date:** [March 19, 2007, 4:50am UTC](https://www.ruby-forum.com/t/help-with-find-in-activerecord/89263/1 "2007-03-19T04:50:51Z")

</div>

Hi

How can I translate this sql using find(\*args) in activerecord?

select x._, y._, count(distinct y.name) as name\_count  
from x,y  
where x.id1 = y.id2  
group by y.name  
order by name\_count

X.find(:all,  
:select =\> “x._, y._, count(distinct y.name) as name\_count”,  
:include =\> “y”,  
:group =\> “y.name”,  
:order =\> “name\_count”)

doesn’t work. Could you please give me some advice?

Thanks

---

<div class="post-metadata">

**Author:** ![jack.tang](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8797f3/32.png) [@jack.tang](https://www.ruby-forum.com/u/jack.tang)\
**Post date:** [March 19, 2007, 6:45am UTC](https://www.ruby-forum.com/t/help-with-find-in-activerecord/89263/2 "2007-03-19T06:45:59Z")

</div>

Don’t use :include with :select, they’re incompatible since :include  
will do a ton of weird stuff to your select statement.

You probably should use a join as well:

X.find(:all,  
:select =\> “x._, y._, count(distinct y.name) as name\_count”,  
:joins =\> “INNER JOIN #{Y.table\_name} ON x.id1 = x.id2”,  
:group =\> “y.name”,  
:order =\> “name\_count”)

---

<div class="post-metadata">

**Author:** ![jack.tang](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8797f3/32.png) [@jack.tang](https://www.ruby-forum.com/u/jack.tang)\
**Post date:** [March 19, 2007, 8:08am UTC](https://www.ruby-forum.com/t/help-with-find-in-activerecord/89263/3 "2007-03-19T08:08:03Z")

</div>

Thanks eden. It works!
