gpt4 book ai didi

ruby-on-rails - rails : Find biggest number out of val. 大小

转载 作者:行者123 更新时间:2023-12-04 18:12:55 25 4
gpt4 key购买 nike

user = SkillUser.find_all_by_skill_id(skill_id)
user.size

给我: 1 2 2 1 3 1 3 1 3 2 1 1 3

如何从这行数字中获得最大值(在本例中为 3)?

感谢帮助

最佳答案

您可以使用 maximum ActiveRelation 的范围:

SkillUser.maximum(:rating)

如果你想要一个名为 rating 的属性的最大值.

如果要计算每个技能 ID 的用户数,请尝试:
SkillUser.count(:group => :skill_id).max_by { |skill_id,count| count }

这将为您提供 Skill_id 和大多数用户的技能的用户数。

要获得更有效的方法(通过在 SQL 中进行整个计算),请尝试:
SkillUser.limit(1).reverse_order.count(:group => :skill_id, :order => :count)
# Giving the SQL:
# => SELECT COUNT(*) AS count_all, "skill_users"."skill_id" AS skill_id
# FROM "skill_users" GROUP BY "skill_users"."skill_id"
# ORDER BY "skill_users"."count" DESC LIMIT 1

请注意 count必须最后调用,因为它不会返回 ActiveRelation 以便您进一步确定查询范围。

关于ruby-on-rails - rails : Find biggest number out of val. 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12259325/

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