Rails - 按条件和限制排序?

时间:2014-07-12 00:13:46

标签: mysql ruby-on-rails sql-order-by

我试图从表中只获取5条记录,我需要确保排序顺序的方式是特定记录始终位于0位。

我如何实现这一目标?我的DB是MYSql

User.order("IF(id == #{current_user.id}) DESC").take(5)

1 个答案:

答案 0 :(得分:1)

可能有一种方法可以使用SQL / MySQL本地执行此操作,但我只需调用两个查询:

users = User.where.not(id: current_user.id).take(4) # perform order/etc
users.unshift(current_user)                         # or find specific record