gpt4 book ai didi

python - 如何使用 Django 从数据库(MySQL)中选择 30 个唯一的随机值?

转载 作者:搜寻专家 更新时间:2023-10-30 23:21:43 26 4
gpt4 key购买 nike

我读过这个问题:In Django, how do I select 100 random records from the database?
并尝试使用 Content.objects.all().order_by('?')[:30],但这会产生一些重复项。那么我如何从数据库中选择 30 个唯一随机值呢?

最佳答案

如果您在数据库中有可管理数量的条目(即不是数千个),这将起作用,即使它两次访问数据库,它也可能比 order_by('?').

import random
content_pks = Content.objects.values_list('pk', flat=True)
selected_pks = random.sample(content_pks, 30)
content_objects = Content.objects.filter(pk__in=selected_pks)

关于python - 如何使用 Django 从数据库(MySQL)中选择 30 个唯一的随机值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5871788/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com