可以说我有2种型号:如何基于没有特定值的关联进行查询?
class User
has_many :books
end
class Book
belongs to :user
end
,让我们说,书中有一个字段:标题。
如何查询没有标题为“abc”的图书的用户?
我试过如下:
User.left_outer_joins(:books).group("users.id, books.title").having("COUNT(books.title) = 0 or books.title != #{title}")
与此查询的问题是,如果用户有2本书(“ABC”和“XYZ”),它仍然会返回。
任何想法?
尝试'User.joins(:书籍).merge(Book.where.not(标题:“ABC '))' – Thanh
所以你想说,如果任何用户在他的集合中甚至只有一个预定名为'abc'的名字,他的名字不应该在结果中,我的理解是否正确?准确地说是 – sahil
。我不想要任何拥有名为abc的书的用户。 –