使用 Rails ActiveRecord 抽象进行此查询的最佳方法是什么?
因此,我有以下 sql 查询,用于从数据库中提取一些相关信息。我想利用 activerecord 抽象来优化 Rails 应用程序的查询。最好的方法是什么?
select count(s.app_id) counters , app.name, app.app_id from subscriptions s, apps app where s.app_id = app.id group by s.app_id order by counters;
So, I have the following sql query that I'm using to pull some relevant information from a database. I want to utilize activerecord abstractions to optimize this query for a rails app. What is the best way to do this?
select count(s.app_id) counters , app.name, app.app_id from subscriptions s, apps app where s.app_id = app.id group by s.app_id order by counters;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我猜你的模型是这样的,
你可以改变应用程序添加一个名为 subscriptions_count 的列来使用 acitverecord 的 counter_cache 功能,然后像这样修改你的模型:
你可以查询应用程序:
i guss you models like this
you can alter apps add a column named subscriptions_count to use acitverecord's counter_cache feature,then modify your model like this:
and you can query apps: