我有一个有名称和值的记录表。桌子的排列方式如下:
ID CLASS MINIMUM
1 classA 1
2 classB 6
3 classC 10
4 classD 25如果给出一个数字,我正在寻找记录的ID下面,但最接近该数字。例如,如果我给你一个5,系统返回一个1,如果我给你一个11,系统返回一个3。
谢谢
发布于 2014-12-19 01:45:40
这个怎么样?
rand_number = 10 #Or any random number
min_obj = MyModel.objects.filter(minimum__lte=rand_number).order_by('-minimum').first()
id = min_obj.id if min_obj else None基本上,按降序顺序排列名为minimum (或其他什么)的列,然后获取第一个记录-- Note first()只对>= 1.6工作,并获取ID
https://stackoverflow.com/questions/27558561
复制相似问题