Re: how i do a update in django QuerySet like this: update table t set col_a = col_a + 2 where col_b = 1

22 views
Skip to first unread message

Tom Evans

unread,
Nov 20, 2012, 10:08:56 AM11/20/12
to django...@googlegroups.com
On Tue, Nov 20, 2012 at 1:00 PM, peixinchen <shan...@gmail.com> wrote:
> how i do a update in django QuerySet like this: update table t set col_a =
> col_a + 2 where col_b = 1,
>
> i could use filter take the place of "where clause", but how "set col_a =
> col_a + 2" to being?
>

from django.db.models import F
Foo.objects.filter(col_b=1).update(col_a=F('col_a')+2)

https://docs.djangoproject.com/en/1.4/topics/db/queries/#query-expressions

Cheers

Tom

peixinchen

unread,
Nov 21, 2012, 1:43:59 AM11/21/12
to django...@googlegroups.com, teva...@googlemail.com
thanks, it works

在 2012年11月20日星期二UTC+8下午11时09分23秒,Tom Evans写道:
Reply all
Reply to author
Forward
0 new messages