在Rails3中post.count to_sql?

Yuv*_*rmi 5 ruby database sqlite ruby-on-rails

我有一个型号名称Post.当我尝试运行Post.count时,我得到一个没有问题的结果.但是,我怀疑Ruby用于计算返回的帖子数量.

相反,我想使用SQL来计算帖子的数量,因为它要快得多.

我发现使用Arel实现这一目标的唯一方法是Post.select("COUNT(id)").如果没有count在模型上显式调用select,是否无法运行命令?谢谢!

Sea*_*ill 13

Post.count应生成查询:

SELECT COUNT(*) FROM "posts"
Run Code Online (Sandbox Code Playgroud)

编辑:您可以通过查看development.log文件来查看生成的查询.


Ale*_*xey 3

那是你要的吗?:

Post.where(your_sql).count
Run Code Online (Sandbox Code Playgroud)

在这里阅读