Python 从Django模型获取每个Xth id的最佳方法?
我需要能够从Django模型中获取每个例如第100个id。到目前为止,我唯一能做的就是: ids=MyModel.objects.values_list'id',flat=True[::100] 有更好的方法吗?您可以使用where和模运算符Python 从Django模型获取每个Xth id的最佳方法?,python,django,model,Python,Django,Model,我需要能够从Django模型中获取每个例如第100个id。到目前为止,我唯一能做的就是: ids=MyModel.objects.values_list'id',flat=True[::100] 有更好的方法吗?您可以使用where和模运算符 MyModel.objects.extra(where=["id %% 100 == 0"]).values_list('id', flat=True) double%是因为我们需要转义它,因为它是参数的保留字符。这是python意义上的“better”
MyModel.objects.extra(where=["id %% 100 == 0"]).values_list('id', flat=True)
double%是因为我们需要转义它,因为它是参数的保留字符。这是python意义上的“better”更好的方法吗?还有,这在速度方面如何?这会比我上面列出的方法更快吗?感谢您的输入:对我来说,这不是很Django-y,因为它可能是特定于数据库的。我知道它适用于Postgres,我会假设MySQL,但我不知道其他的。但是,就速度而言,这要快一些,因为它在数据库级别而不是在app/python级别进行过滤。