【问题标题】:Rails SQL find all where associations have list ids [duplicate]Rails SQL查找所有关联具有列表ID的地方[重复]
【发布时间】:2015-11-18 05:59:50
【问题描述】:

大家好!

使用 Rails 4,Postgresql

如何从列表中找到至少拥有带有 id 的书籍的所有用户

IN,如下所示,不工作

导轨

list = [1,2,3]
User.includes(:books).where('books.id IN (?)', list)

SQL

SELECT "users".* FROM "users"
INNER JOIN "books" ON "books"."user_id" = "users"."id"
WHERE "books"."id" IN (1,2,3)

我需要找到需要书籍 1,2 和 3 的用户。

谢谢

【问题讨论】:

标签: sql postgresql ruby-on-rails-4


【解决方案1】:

谢谢,LongBeard_Boldy

https://stackoverflow.com/users/5093622/longbeard-boldy

有效

已编辑

添加解决方案:

list = [1,2,3]
User.joins(:books).where('books.id IN (?)', list).group('users.id')
  .having("COUNT(users.id) >= ?", list.length)

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-24
  • 2011-02-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多