sql select记录从第5条记录到末尾

时间:2019-07-10 09:48:20

标签: sql ruby-on-rails postgresql

以下是我要完成的模型文件中的作用域,以获取从第5条记录到称为“与会者”的表末尾的所有记录:

scope:waiting_list,-> {where(will_not_attend:false)}

非常感谢您的协助。谢谢。

2 个答案:

答案 0 :(得分:0)

这将帮助您:

Attendee.last(Attendee.count - 5)

以上代码将跳过前五个记录,并返回Array中的其余记录。

您想要的范围将是:

scope :waiting_list, -> { where(will_not_attend: false).last(Attendee.count - 5) }

答案 1 :(得分:0)

跳过记录的最后数目然后获取剩余的记录不是一个好方法,因为数据库中可能会有新的插入导致无效的记录。 您可以根据需要使用offset跳过行数。

scope :waiting_list, -> { where(will_not_attend: false).order(created_at: :asc).offset(Attendee.count - 5) }