查找具有关联的计数的所有记录大于零 [英] Find all records which have a count of an association greater than zero

查看:152
本文介绍了查找具有关联的计数的所有记录大于零的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图做一些事情,我认为这将是简单,但它似乎不是。

I'm trying to do something that I thought it would be simple but it seems not to be.

我有了很多空位项目模型。

I have a project model that has many vacancies.

class Project < ActiveRecord::Base

  has_many :vacancies, :dependent => :destroy

end

我想获得所有具有至少1个空缺的项目。 我想是这样的:

I want to get all the projects that have at least 1 vacancy. I tried something like this:

Project.joins(:vacancies).where('count(vacancies) > 0')

但它说

的SQLite3 ::的SQLException:没有这样的列:空缺:选择项目*从项目INNER JOIN空缺ON空缺,PROJECT_ID=项目,ID。 WHE​​RE(项目deleted_atIS NULL。)和(计数(空缺)大于0)。

推荐答案

加入默认情况下使用,以便使用内部连接 Project.joins(:休假)将生效只返回有关联的度假项目。

joins uses an inner join by default so using Project.joins(:vacations) will in effect only return projects that have an associated vacation.

这篇关于查找具有关联的计数的所有记录大于零的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆