我正在使用rails 4来开发我的应用程序。我的活动记录查询中遇到问题,条件不等于。我没有得到所需的输出。我认为存在不等于部分的问题。
@available_rooms = Room.joins("LEFT OUTER JOIN reservations ON reservations.room_id = rooms.id").where("category_id = ? AND arrival_date != ?",params[:category],params[:arrival_date])
您可以在 Rails 4 中使用 where.not()
:
@available_rooms = Room.joins("LEFT OUTER JOIN reservations ON reservations.room_id = rooms.id")
.where(category_id: params[:category])
.where.not(arrival_date: params[:arrival_date])
在某些版本的 SQL 中,不等于写成!=
使用比较器尝试此操作<>
如下所示:
@available_rooms = Room.joins("LEFT OUTER JOIN reservations ON reservations.room_id = rooms.id")
.where("category_id = ? AND arrival_date <> ?",params[:category],params[:arrival_date])