gpt4 book ai didi

ruby-on-rails - Rails、Postgres 仅显示所有搜索参数中存在的项目

转载 作者:行者123 更新时间:2023-11-29 14:02:41 26 4
gpt4 key购买 nike

<分区>

我只想获取商店中某些年份之间存在的销售记录。我将如何最好地实现此搜索?

例如,用户选择开始年份 2013 年和结束年份 2016 年以及商店名称。所选商店出售香蕉和苹果,但该商店仅在 2013 年、2014 年和 2016 年出售苹果。我希望我的结果仅显示香蕉的平均销售额,因为 2015 年没有出售苹果。

到目前为止,我有以下查询:

@sale_averages = Sale.joins(:shops, :items).where('extract(year from season_year) < ? AND extract(year from season_year) > ? ', params[:start_year], params[:end_year])
.where('shops.name = ?', params[:select_shop])
.select('items.name, AVG(sale.price) as price').group('shop.name')

只是不确定如何创建一个查询来过滤掉所有搜索参数(年份和商店)中的项目(或 ID)。

架构

create_table "items", force: :cascade do |t|
t.string "name"
end

create_table "sales", force: :cascade do |t|
t.integer "shop_id"
t.integer "item_id"
t.date "season_year"
t.decimal "price"
end

create_table "shops", force: :cascade do |t|
t.string "name"
end

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