有人知道我将如何使用 AR 编写该查询吗?
select *, (m.user_id=1) as member from band b join memberships m on m.band_id = g.id;
提前致谢。
最佳答案
这里的假设是你有这样的东西:
class Band < ActiveRecord::Base
has_many :memberships
has_many :users, :through => :memberships
end
class User < ActiveRecord::Base
has_many :memberships
has_many :bands, :through => :memberships
end
class Membership < ActiveRecord::Base
belongs_to :user
belongs_to :band
end
在这种情况下,您可以轻松地执行此查询。
user = User.find(1)
user.bands
但是,您的问题非常模糊,所以如果这不是您要查找的内容,请考虑使用更多详细信息扩展您的问题。您还在问题中引用了一个从未定义过的别名“g”。
关于sql - 如何使用 ActiveRecord 编写连接查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1390124/