Django_ORM数据表查询总结
生活随笔
收集整理的這篇文章主要介紹了
Django_ORM数据表查询总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
class?Author(models.Model):'''作者表'''name?=?models.CharField(max_length=32)book?=?models.ManyToManyField(to="Book")#?def?__str__(self):#?????return?self.nameclass?Book(models.Model):'''書表'''title?=?models.CharField(max_length=32)price?=?models.CharField(max_length=32)publish?=?models.ForeignKey(to="Publish")#?def?__str__(self):#?????return?self.title#egon出版過的書的出版社信息class?Publish(models.Model):'''出版社'''address?=?models.CharField(max_length=32)#?def?__str__(self):#?????return?self.address#?author?=?models.Author.objects.all()???#查詢到所有的作者對象queryset???author多對多book
#?book?=?models.Book.objects.all()??#?查詢到所有的書籍對象queryset???????book多對一publish
#?publish?=?models.Publish.objects.all()???#查詢到所有的出版社對象queryset
#?#================================================字段查詢============================================================
#?for?te?in?author:
#?????print("======author",te.name)??????#查詢自己表內的信息
#?????print("======author_book",te.book.first().title)??????#通過自己查找多對多的字段
#?????print("======author_book_publish",te.book.first().publish.address)??????#通過自己查找多對多的字段,然后查找多對一字段
#?for?te?in?book:
#?????print("========tetetet",te)
#?????print("======book",te.title,te.price)??????#查詢自己表內的信息
#?????print("========book_publish",te.publish.address)?????#通過自己查詢多對一的出版社表
#?????print("==========book_author",te.author_set.first())?????#通過自己反向查找作者姓名
#?for?te?in?publish:
#?????print("=====publish",te.address)??????#查詢自己表內的信息
#?????print("=====publish_book",te.book_set.first().title)
#?????print("=======publish_book_author",te.book_set.first().author_set.first())
#
#
#?author_book_publish?=?author.first().book.all().first().title
#?print("==================================",author_book_publish)
#?#============================================雙下劃線正向查詢===========================================================#?author?=?models.Author.objects.all()??#?查詢到所有的作者對象queryset???author多對多book
#?book?=?models.Book.objects.all()??#?查詢到所有的書籍對象queryset???????book多對一publish
#?publish?=?models.Publish.objects.all()??#?查詢到所有的出版社對象queryset#?book_title?=?author.filter(name="egon").values("book__title")??????#在author表中查book標的title
#?book_price?=?author.filter(name="egon").values("book__price")??????#在author表中查book表的price
#?book_publish_address?=?author.filter(name="egon").values("book__publish__address")???#在author表中二次關聯查找出版社
#?print("============book_title|book_price",book_title,book_price)
#?print("============book_publish_addredd",book_publish_address)#?#============================================雙下劃線反向查詢===========================================================
#?book_title?=?publish.filter(address="北京").values("book__title")
#?book_price?=?publish.filter(address="北京").values("book__price")
#?publish_book?=?publish.filter(address="北京").values("book__author")
#?publish_author_book?=?publish.filter(address="北京").values("book__author__name")
#?print("============book_title|book_price",book_title,book_price)
#?print("============publish_book",publish_book)
#?print("============publish_author_book",publish_author_book)########################################################################################################################
轉載于:https://blog.51cto.com/52770825/1980887
總結
以上是生活随笔為你收集整理的Django_ORM数据表查询总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基类和派生类中使用static_cast
- 下一篇: Mysql (一)Mysql 数据库增删