• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

django查询表数据是否存在

python 搞java代码 3年前 (2022-05-24) 24次浏览 已收录 0个评论

一.查询函数

通过模型类.objects属性可以调用如下函数,实现对模型类对应的数据表的查询。 (这里objects是django为我们实现的一个模型管理类的对象)

(1)get

返回满足条件的一条且只有一条数据。返回值是一个模型类的对象。

参数中写查询条件。

1)如果查到多条数据,则抛异常MultipleObjectsReturned。

2)查询不到数据,则抛异常:DoesNotExist

(2)all

返回模型类对应的表中所有的数据。返回的是一个Queryset集合。

(3)filter

返回满足条件的数据,返回值是一个Queryset集合。

(4)exclude

返回不满足条件的数据,返回值是一个Queryset集合。

(5)order_by

对查询的结果进行排序,返回值是一个Queryset集合。

查询条件格式

条件格式:

模型类属性名__条件名=值

www#gaodaima.com来源gaodaimacom搞#^代%!码网搞代码

a)判等

条件名:exact。

可以省略。

b)模糊查询

contains 包含

startwith 开头 endwith 结尾

c)空查询

isnull

d) 范围查询

in

e)比较查询

lt 小于 gt 大于 gte大于等于 lte小于等于

f)日期查询

year 年份

二.F对象

用于类属性之间的比较。使用之前需要先导入:

   from django.db.models import F

二.Q对象

用于查询时条件之间的逻辑关系。not and or,可以对Q对象进行~&|操作。 使用前应该先导入:

from django.db.models import Q

三.聚合函数

对查询结果进行聚合操作。 sum count avg max min

(1)aggregate

调用这个函数来使用聚合。返回值是一个字典。

先要导入聚合类:

from django.db.models import Sum,Count,Max,Min,Avg

(2)count函数 返回值是一个数字.

他们是对查询结果进行操作。

例如:

查询结果.aggregate(Count(要统计的字段属性))

关联查询

通过多类的条件查询一类的数据:

一类名.objects.filter(多类名小写__多类属性名__条件名)

通过一类的条件查询多类的数据:

多类名.objects.filter(关联属性__一类属性名__条件名)

queryset查询集

查询集特性:

1)惰性查询:只有在实际使用查询集中的数据的时候才会发生对数据库的真正查询。

2)缓存:当使用的是同一个查询集时,第一次使用的时候会发生实际数据库的查询,然后把结果缓存起来,之后再使用这个查询集时,使用的是缓存中的。

可以用角标或者切片的方式来限制查询值。


来源:搞代码网:原文地址:https://www.gaodaima.com


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:django查询表数据是否存在

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址