Sql 获取订单数量和所属对象的价格,以在Rails 6中显示总数
我有一个Sql 获取订单数量和所属对象的价格,以在Rails 6中显示总数,sql,ruby-on-rails,ruby,postgresql,activerecord,Sql,Ruby On Rails,Ruby,Postgresql,Activerecord,我有一个价格的对象工具和一个工具排序器,用于每一笔数量的销售。我需要显示销售总额 Tool has many: tools_orders ToolsOrders belongs_to: tool 我是这样想的还是类似的?我做不到 ToolsOrder.sum("quantity * Tool.price") 如何计算总和?有时读取代码给出的错误消息很有用。假设您得到的错误是:表“tool”的子句条目中缺少。这意味着您正在从表工具查询价格,但当前查询中没有此类表 你错过了一
价格的对象工具
和一个工具排序器
,用于每一笔数量的销售。我需要显示销售总额
Tool has many: tools_orders
ToolsOrders belongs_to: tool
我是这样想的还是类似的?我做不到
ToolsOrder.sum("quantity * Tool.price")
如何计算总和?有时读取代码给出的错误消息很有用。假设您得到的错误是:表“tool”的子句条目中缺少。这意味着您正在从表工具
查询价格
,但当前查询中没有此类表
你错过了一个连接
ToolsOrder.joins(:tool).sum(“数量*工具.价格”)
如果你愿意的话,使用Arel会更安全
ToolsOrder.joins(:tool).sum(ToolsOrder.arel_表[:数量]*tool.arel_表[:价格])
现在没有纯粹的sql,它很容易在(工具vs工具)中输入错误,并且容易接受sql注入。谢谢,两个表中都有一个小问题,一个是库存和销售订单,现在我有了这个错误PG::含糊不清的列:错误:列引用“数量”第1行不明确:您还需要为数量添加表名前缀(tools\u orders.quantity
),以指定您所指的数量。或者使用Arel溶液