2011-01-02 2 views
4

모델 이름은 Post입니다. Post.count를 실행하려고하면 문제없이 결과가 나옵니다. 그러나 Ruby가 반환 된 게시물 수를 계산하는 데 사용 된 것으로 판단됩니다.Rails3의 Post.count to_sql?

대신 훨씬 빠른 SQL을 사용하여 게시물 수를 계산하고 싶습니다.

Arel을 사용하여 이것을 달성하는 유일한 방법은 Post.select("COUNT(id)")입니다. 명시 적으로 모델에서 select를 호출하지 않고 count 명령을 실행할 방법이 있습니까? 감사합니다.

+2

에서,'count' 방법은 이것이다 : http://api.rubyonrails.org/classes/ActiveRecord/Calculations.html# 방법 - 카운트 –

답변

3

원하는 것이 맞습니까? :

Post.where(your_sql).count 

읽기 here

루비 게시물의 수를 계산하는 데 사용되지 않습니다
12

Post.count 쿼리를 생성해야합니다

SELECT COUNT(*) FROM "posts" 

편집 : 당신은 당신의 development.log 파일 파일보고에 의해 생성 된 쿼리를 볼 수 있습니다.

관련 문제