如何用ActiveRecord编写连接查询?

0 ruby sql postgresql activerecord ruby-on-rails

有谁知道如何用AR写这个查询?

select *, (m.user_id=1) as member from band b join memberships m on m.band_id = g.id;
Run Code Online (Sandbox Code Playgroud)

提前致谢.

jdl*_*jdl 7

这里的假设是你有一些看起来像这样的东西:

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
Run Code Online (Sandbox Code Playgroud)

在这种情况下,您可以轻松执行此查询.

user = User.find(1)
user.bands
Run Code Online (Sandbox Code Playgroud)

但是,你的问题很模糊,所以如果这不是你想要的,请考虑扩展你的问题以及更多细节.您还在您的问题中引用了一个从未定义过的别名"g".