Django 之 ORM 查詢使有
阿新 • • 發佈:2019-05-13
settings 所有 不存在 nvi http django 加載 __name__ models 一、在Django項目上運行python文件查詢數據庫
import os if __name__ == ‘__main__‘: #加載Django項目的配置信息 os.environ.setdefault("DJANGO_SETTINGS_MODULE","testinclude.settings") #導入Django,並啟動Django項目 import django django.setup() from ormtest import models #查詢所有作者 all_author = models.Author.objects.all() print(all_author) #get查詢某個人,當值不存在時會報錯 person = models.Author.objects.get(id=7) print(person) print("filter".center(60,"*")) #filter返回數據為一個列表,當值不存在時,不會報錯,返回一個空的列表 person = models.Author.objects.filter(id=7) print(person) print(person[0]) #exclude 返回id不等於1的所有值,排隊法 print("exclude".center(60,"*")) person = models.Author.objects.exclude(id=1) print(person) print("values返回值".center(60,"*")) person = models.Author.objects.values() print(person) print("orderby按照指定的字段排序") person = models.Author.objects.all().order_by("id") print(person) print("count統計匹配的數量".center(60,"*")) count = models.Author.objects.all().count() print(count) print("first返回第一行數據".center(60,"*")) person = models.Author.objects.all().first() print(person) print("last返回最後一行數據".center(60, "*")) person = models.Author.objects.all().last() print(person)
程序執行結果:
<QuerySet [<Author: author_name:小白>, <Author: author_name:小周>, <Author: author_name:小紅>, <Author: author_name:小綠>, <Author: author_name:小光>]> author_name:小光 ***************************filter*************************** <QuerySet [<Author: author_name:小光>]> author_name:小光 **************************exclude*************************** <QuerySet [<Author: author_name:小白>, <Author: author_name:小周>, <Author: author_name:小紅>, <Author: author_name:小綠>, <Author: author_name:小光>]> *************************values返回值************************** <QuerySet [{‘id‘: 3, ‘name‘: ‘小白‘}, {‘id‘: 4, ‘name‘: ‘小周‘}, {‘id‘: 5, ‘name‘: ‘小紅‘}, {‘id‘: 6, ‘name‘: ‘小綠‘}, {‘id‘: 7, ‘name‘: ‘小光‘}]> orderby按照指定的字段排序 <QuerySet [<Author: author_name:小白>, <Author: author_name:小周>, <Author: author_name:小紅>, <Author: author_name:小綠>, <Author: author_name:小光>]> ************************count統計匹配的數量************************ 5 ************************first返回第一行數據************************ author_name:小白 ************************last返回最後一行數據************************ author_name:小光
Django 之 ORM 查詢使有