mysql - Rails 高级查询与连接和求和计算

标签 mysql ruby-on-rails ruby database

我有两个模型:公司和费用。公司有很多费用,而费用属于公司。我的费用模型有一个“金额”列。

我想知道是否有一种方法可以根据日期范围和费用金额列进行查找。比如 7 天内总费用排名前 3 的公司。

我已经尝试了一天中的大部分时间来让它工作,我尝试过联接、链接命名范围、原始 sql 等,但我没有任何运气。

感谢您的帮助。

最佳答案

我将其添加到我的公司模型中,并能够实现我正在寻找的东西......

named_scope :top_with_expenses, :joins => :expenses, :conditions => ['expenses.created_at > ?', Time.now.midnight - 7.days], :order => "SUM(expenses) DESC", :group => "expenses.company_id", :limit => 3

关于mysql - Rails 高级查询与连接和求和计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3034345/

相关文章:

sql - 在 MySQL 中,如何编写 INSERT-INTO-VALUES 查询,以便在具有相同主键值的记录已存在时将其静默丢弃?

Mysql边选择边插入

ruby-on-rails - Rails 4 + 已审核 : Get audits for deleted object

mysql - SQL - 创建具有时间戳列引用的默认值的列

mysql - 如何找到其他字段中数据独有的字段?

ruby-on-rails - 在 Rails 3 上设置文件下载权限的最佳方法

ruby-on-rails - 从 mixin 访问类名

ruby - 将字符串拆分为 N 个字符的子字符串

ruby-on-rails - FiberError - 跨线程调用的纤程

ruby - 通过 SSH 使用 Ruby Grit 从 Git 存储库下载和修改文件