首页 > 解决方案 > 查找数据库中没有关联记录的所有记录

问题描述

我有两个模型

class Checkout
 has_one :order
end

class Order 
  belongs_to :checkout
end

我需要找到所有还没有订单的结账。我怎么能用铁轨做到这一点?

标签: mysqlruby-on-railsrubyactiverecord

解决方案


使用left outer join它会给你所有的结帐和订单。然后选择没有订单的行 ( order.id == nil)

Chceckout.left_outer_join(:orders).where('orders.id' => nil)

推荐阅读