1. 程式人生 > >django資料庫操作擴充套件

django資料庫操作擴充套件

查詢:

1.查詢一條資料

get 和first

A.object.get(id=1):返回一條

A.object.filter(id=1).first():返回1條

要獲取單條資料的時候,推薦使用first;因為get獲取不到的時候會報錯,而filter獲取不到時返回None;

而且get()返回的是一個物件例項,而filter返回的是一個物件列表。

2.查詢指定的列名的資料

values(屬性名1,屬性名2)返回指定的QuerySet物件列表

A.objects.all().values('url')  :<QuerySet[{ 'url' : 'baidu.com' }, { 'url':'itheima.com' } ]>

value_list返回的物件列表裡為元祖,values返回的列表裡是字典。

3.修改資料

get獲取到單挑資料,設定單條資料的值,然後save

obj = A.object.get(id=1)

obj.username = 'wjm'

obj.save() 

若不存在則儲存

通過filter(id=1).update(username='wjm')

A.object.filter(id=1).update(username=username)

若不存在則返回None

4.聚合函式

from django.db.models import Min,Max,sum

A.objects.all().aggregate(Max('guest_id'))

A.objects.all().group_by('url').aggregate(Sum('pv'))