gpt4 book ai didi

mysql - has_many 与计数值的关联

转载 作者:行者123 更新时间:2023-11-30 22:40:28 26 4
gpt4 key购买 nike

    # == Schema Information
#
# Table name: orders
#
# id :integer not null, primary key
# order_name :string(255)
# payment_mode :string(255)
# total_cost :integer default(0)
# user_id :integer
# created_at :datetime
# updated_at :datetime
#

class Order < ActiveRecord::Base
has_many :order_items, dependent: :destroy
belongs_to :user
end

# == Schema Information
#
# Table name: order_items
#
# id :integer not null, primary key
# order_id :integer
# product_id :integer
# quantity :integer
# total_price :integer default(0)
# created_at :datetime
# updated_at :datetime
#

class OrderItem < ActiveRecord::Base
belongs_to :order
end

我的预期输出应该是这样的订单名称,total_cost,每个订单的产品数量。

我如何使用事件记录实现这一目标。

我尝试了以下方法

Order.select("orders.*,count(order_items.product_id) as product_count").joins(:order_items)

最佳答案

尝试以下查询以散列形式给出结果,您可以获得预期的结果。只需验证您的关系和表名

OrderItem.joins(:order).select("orders.order_name as order_name,orders.total_cost as total_cost, count(*) as product_count").group(:order_id).as_json

关于mysql - has_many 与计数值的关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31249075/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com