简体   繁体   English

按最接近的数字查找订单

[英]find order by closest to number

How can I arrange order in Model.where(...).order() to sort the items based on proximity of a number field to assign number? 如何在Model.where(...).order()安排订单, Model.where(...).order()根据数字字段的接近程度来分配商品?

So, when I request to order for 4, (1...6) would be something like this: [4,5,3,6,2,1] 因此,当我请求订购4时,(1 ... 6)会像这样:[4,5,3,6,2,1]

Sounds like you want the absolute value of the difference between a given number and the field value. 听起来您想要给定数字与字段值之间的差的绝对值。 For example: 例如:

User.order("abs(4 - <your-field-name-here>)")

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM