Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何随机化查询集的顺序_Python_Django_Django Queryset - Fatal编程技术网

Python 如何随机化查询集的顺序

Python 如何随机化查询集的顺序,python,django,django-queryset,Python,Django,Django Queryset,考虑以下查询: candidates=Candidate.objects.filter(ElectionID=ElectionIDx) 此查询中的对象按其id字段排序 如何随机化查询中对象的顺序?是否可以使用.order\u by()?是的,您可以使用特殊参数?和order\u by来获得随机查询集: Candidate.objects.filter(ElectionID=ElectionIDx).order_by('?') 请注意,根据数据库后端的不同,随机化可能速度慢且成本高。我建议你先

考虑以下查询:

candidates=Candidate.objects.filter(ElectionID=ElectionIDx)

此查询中的对象按其
id
字段排序


如何随机化查询中对象的顺序?是否可以使用
.order\u by()

是的,您可以使用特殊参数
order\u by
来获得随机查询集:

Candidate.objects.filter(ElectionID=ElectionIDx).order_by('?')


请注意,根据数据库后端的不同,随机化可能速度慢且成本高。我建议你先做基准测试。如果您觉得查询速度慢,那么请尝试寻找替代方法,在找到替代方法之前,请先使用

请注意,根据文档,这些“查询可能会很昂贵且很慢,具体取决于您使用的数据库后端。”@BUZZY是否有一种成本较低的方法来实现相同的结果?@cbuch1800首先执行基准测试。如果你觉得速度慢,那么试着寻找替代方案,在那之前先使用
。可能重复@AshrafulIslam谢谢,这个链接非常有用。问题略有不同,但信息是100%相关和有用的。