【问题标题】:how to generate month wise data report in rails 3如何在 Rails 3 中生成月度数据报告
【发布时间】:2014-03-19 01:16:19
【问题描述】:

我是 Rails 新手,我在月度数据报告方面遇到了一些问题。 我有一个 user tabletransaction tablehas_many 关联。交易表有列type(买或卖)、amount(amount_value)、created_atupdated_at列和用户 ID

我如何由此生成用户的月度交易报告。

【问题讨论】:

  • 您要求的是 SQL 查询吗?或者如何在rails中构建它?您的问题并不具体,您应该提供一些示例代码。如果您正在谈论如何在 mysql 中按月获取数据,那么可以通过 MONTH() 方法...dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
  • @johnRuddell 我在问如何在 Rails 中构建。
  • 您需要提供一些初步尝试,即使它很糟糕。您不能只要求我们为您编写代码……只需在谷歌上搜索一些示例,尝试遵循这些示例,然后如果您有问题,请在此处发布。这就是 SO 的用途 :) 一些示例链接... stackoverflow.com/questions/10233422/… -------- ruby-toolbox.com/projects/jasper-rails ------ ruby-toolbox.com/categories/reporting ---- 这是来自简单的谷歌搜索
  • @johnRuddell 你能帮我写同样的sql吗?
  • 这取决于您想要的报告中的内容。但是你可以做的是当你SELECT your_data_here FROM transaction_table...过滤掉你想要的JOIN用户表并使用WHERE...然后将它添加到末尾GROUP BY MONTH(created_at)..这将分组完成月份的所有数据

标签: mysql sql ruby-on-rails-3 activerecord


【解决方案1】:

考虑到你的控制器有

@user = User.find(params[:id])

意味着您在用户show 操作中,您可以获得他们的交易,如下所示:

@transactions = @user.transactions

如果您的命名正确,它应该返回一个包含所有交易的数组。

编辑 我的印象是您在 Rails 上使用 ruby​​,这意味着无需编写 sql 查询!如果我错了,你只想要 sql 查询,那么你可以在 cmets 中找到答案!

【讨论】:

  • 我对 Rails 知之甚少,所以是的,如果他想要查询只需按照 cmets... 如果它全部在 Rails 中构建,那么我猜他不需要 sql :)编辑
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-22
  • 1970-01-01
  • 1970-01-01
  • 2016-04-27
  • 1970-01-01
相关资源
最近更新 更多