我在django中有一个脚本,我在终端上运行以更新数据库中的字段值, 有大约3000条记录需要更新,它已更新,但需要花费很多时间。
以下是代码:
getAge = myplayer.objects.all()
for i in getAge:
i.age = i.age + 0.0192 # it is equilant to 1/52
i.save()
print "new age of id - " ,i.id, "is ", i.age
我正在使用MYSQL DB,请建议如何加快插入时间
感谢
答案 0 :(得分:4)
如果您不需要打印新的年龄,可以使用F:
执行以下操作from django.db.models import F
myplayer.objects.update(age=F('age')+0.0192)
答案 1 :(得分:3)
from django.db.models import F
myplayer.objects.all().update(age=F('age') + 0.192)
阅读https://docs.djangoproject.com/en/dev/topics/db/queries/#updating-multiple-objects-at-once