gpt4 book ai didi

sql - 将 SQL 查询转换为 ActiveRecord 查询

转载 作者:行者123 更新时间:2023-11-29 12:57:45 25 4
gpt4 key购买 nike

问题:我不知道如何转换这个 PostgreSQL 查询:

select news_id, sum(case when likes.like then 1 else -1 end) as max_positive from likes group by(news_id) order by(max_positive) desc

到 ActiveRecord 查询。

我尝试过的:

Like.group(:news_id)
.sum('CASE WHEN likes.like THEN 1 ELSE -1 end')
.max_by { |_k, v| v }

但结果是数组而不是选择 news_id。

最佳答案

像这样?

Like.group(:news_id).select("news_id, SUM(case when likes.like then 1 else -1 end) as max_positive").order("max_positive desc")

关于sql - 将 SQL 查询转换为 ActiveRecord 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38835269/

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