要列出我数据库中的所有商店,我有查询
@shops = Shop.includes(:opening_times)
.references(:opening_times)
.limit(paging)
.offset(@offset)
如果我只想获得现在正在营业的商店,我可以添加
.where("opening_times.day =?", today) #Open today
.where("opening_times.opens <= ?", @now) #Opening time is before now
.where("(opening_times.opens+opening_times.open_for) > ?", @now) #Closing time is after now
.order("opening_times.opens+opening_times.open_for") #Order by earliest opening time
但我需要列出所有商店,目前正在营业的商店位于顶部。有没有办法按照是否满足当前开放的条件对列表进行排序?
这是使用postgres。