如何使用 django 从数据库(MySQL)中选择 30 个唯一的随机值?
我读过这个问题:在Django,如何从数据库中随机选择100条记录?
并尝试使用 Content.objects.all().order_by('?')[:30]
,但这会产生一些重复的项目。那么我如何从数据库中选择 30 个唯一随机值呢?
I've read this question: In Django, how do I select 100 random records from the database?
And tried to use Content.objects.all().order_by('?')[:30]
, but this will produce some duplicate items. So how could I select 30 unique random values from database?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果数据库中有可管理数量的条目(即不是数千),那么这将起作用,即使它访问数据库两次,它也可能比
order_by('?')
高效得多。If you have a manageable number of entries in the database (ie not thousands), this will work, and even though it hits the db twice it will probably be much more efficient than
order_by('?')
.