是否可以使用rails进行这样的查询?
SELECT items.*, (select count(*) from ads where item_id = items.id) as adscount WHERE 1
然后像这样访问这个字段?
@item.adscount
例如,每个项目有一百个左右的广告。在项目索引视图中,我需要显示每个项目有多少广告。
现在我只知道如何对每个项目进行唯一查询,例如:
select count(*) from ads where item_id = 1
select count(*) from ads where item_id = 2
select count(*) from ads where item_id = 3
etc
编辑:
做了一个计数器缓存列。
这给了我巨大的性能提升。