gpt4 book ai didi

ruby-on-rails - MySQL 语句转换为漂亮的 Rails AR 语句?

转载 作者:行者123 更新时间:2023-11-29 14:58:15 24 4
gpt4 key购买 nike

我花了一个晚上才想出一条 MySQL 语句。我想知道这个东西是否可以从直接调用转换为类似 Object.find(:conditions) 的东西

    ActiveRecord::Base.connection.execute("
SELECT *,
(SELECT COUNT(*)
FROM scores AS temp2
WHERE temp2.score > scores.score
ORDER BY score DESC) + 1 AS rank
FROM scores
WHERE user_id=%s
ORDER BY score DESC"
% user_id).fetch_hash

此声明是为 Android 游戏构建的高分网站的一部分。它获得了最高分,并且有一个子查询也给出了排名。

这可以做得更好吗?另外,这是最有效的方法吗?

谢谢,贾斯汀

最佳答案

这应该适合你:

user = Score.find_by_user_id(id)
rank = Score.count(:conditions => ['score > ?', user.score]) + 1

关于ruby-on-rails - MySQL 语句转换为漂亮的 Rails AR 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3957144/

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