私は Rails 2 で作業しています。1 つのテーブル users と他のテーブル lms_users があります。lms_users テーブルでは、users テーブルの ID が外部キーとして取得されます。このような方法で 2 つのテーブルを結合したいので、エントリが lms_users にないユーザーのみを取得します。
1 に答える
0
class User
named_scope :not_in_lms_users, {
:conditions => [ "users.id NOT IN (SELECT user_id FROM lms_users)" ]
}
end
また
class User
named_scope :not_in_lms_users, {
:conditions => "lms_users.user_id IS NULL",
:joins => "LEFT OUTER JOIN lms_users ON lms_users.user_id = users.id"
}
end
確認するだけですが、2番目の方が効率的だと思います。これはうまくいくはずです:
User.not_in_lms_users
于 2013-11-19T08:58:53.003 に答える