mysql - Rails 5 Left Outer Join 与 WHERE 查询相结合
问题描述
我的User
模型有以下查询:
def self.leaders
self.left_joins(:user_tasks)
.group(:id)
.order("COUNT(user_tasks.id) DESC")
end
但是我只想查询user_tasks
where status: 'approved'
。
以下未成功查询 user_tasks 表:
def self.leaders
self.left_joins(:user_tasks)
.where(status: 'approved')
.group(:id)
.order("COUNT(user_tasks.id) DESC")
end
解决方案
您是否尝试在 where 子句中添加相关的表名?
.where("user_tasks.status" => 'approved')
如果这不起作用,请运行to_sql
您的查询并编辑您的问题并在那里添加生成的 sql,以便我们查看它:)
推荐阅读
- javascript - 包含“nl@”时的奇怪输入值
- java - Hibernate 数据库 (maria-db) 更改检测
- kotlin - 具有非数值的对象框 notIn
- python - Python:将整数转换为数据时间戳
- android - 应用程序未激活时,应用程序图标未显示通知
- android - 有没有办法检测我当前的 wifi 是否与之前连接的 wifi 不同?
- c# - 是否可以从自己的 getter 中的数组类型属性中获取索引
- python - ValueError: int() 基数为 16 的无效文字:''
- sql-server - 在 Sql Server 中解析以下 XML 时出错
- arrays - 如何在 swift 中在 NSArray 中的空值索引中附加新值