鉴于架构:
stats {
id: integer
total: integer
total_accepted: integer
total_rejecged: integer
}
我需要像这样一次更新记录:
UPDATE stats SET total = total + 1, total_accepted = total_accepted + 1 WHERE id=1
那么如何在不使用原始sql的情况下在Django中实现它呢?
答案 0 :(得分:1)
您需要的是query expressions:
因此,使用查询表达式(F()
方法),您的查询将如下所示:
Stats.objects.filter(id=1).update(total=F('total') + 1, total_accepted=F('total_accepted') + 1)