Rails – 如何找到某个列值为nil的所有行where()
我想返回一个数组,其中包含一个名为bookings
的表中的所有行,其中bookings
空。
到目前为止,我已经尝试过Booking.where("returned_date ''")
,它选择了存在returned_date的所有记录,但我希望对此进行反向选择。
如果你想使用returned_date
列为null
:
Booking.where(returned_date: nil)
您可以使用以下查询
Booking.where("returned_date IS NULL")
要么
您可以在Booking
模型中添加范围
Class Booking < ActiveRecord::Base scope :nil_returned_date, -> { where("returned_date IS NULL") } end
然后将其称为Booking.nil_returned_date