Django 框架数据库的相关操作

Posted 小小菜_v

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 框架数据库的相关操作相关的知识,希望对你有一定的参考价值。

Django 数据库相关操作

# 包含 icontains
book_info = BookInfo.objects.filter(name__icontains="美").values()

# 正则匹配 regex
book_info = BookInfo.objects.filter(id__regex=r"^[0-5]{3}$").values()

# 大于/大于等于/小于/小于等于  gt/gte/lt/lte
book_info = BookInfo.objects.filter(create_time__gt="2021-05-28").values()
book_info = BookInfo.objects.filter(create_time__gte="2021-05-28").values()
book_info = BookInfo.objects.filter(create_time__lt="2021-05-28").values()
book_info = BookInfo.objects.filter(create_time__lte="2021-05-28").values()

# 范围 range
book_info = BookInfo.objects.filter(create_time__range=["2021-05-20", "2021-05-28"]).values()

# 是否为空 isnull
book_info = BookInfo.objects.filter(create_time__isnull=True).values()

# Q 对象 可以使用 & | ~ 进行组合进行查询
book_info = BookInfo.objects.filter(Q(create_time="2021-05-28")).values()
book_info = BookInfo.objects.filter(~Q(create_time="2021-05-28")).values()
book_info = BookInfo.objects.filter(Q(create_time="2021-05-28")
									&(create_time="2021-05-20")).values()
book_info = BookInfo.objects.filter(Q(create_time="2021-05-28")
									|(create_time="2021-05-20")).values()

# F 对象
# 1、 可以进行属性比较
book_info = BookInfo.objects.filter(chinesenum_gt=F('englishnum'))
# 2、支持F对象的算术运算
book_info = BookInfo.objects.filter(chinesenum_gt=F('englishnum')+20)
# 3、F对象参数如果是date/time,可以进行日期的加减运算:
book_info = BookInfo.objects.filter(create_time__lt=F('create_time') + timedelta(days=5))




以上是关于Django 框架数据库的相关操作的主要内容,如果未能解决你的问题,请参考以下文章

Django---ORM操作大全

Django之ORM操作

Django之ORM

Web框架Django进阶

Django-ORM操作数据库无数据问题

Django REST框架--认证和权限