Django:ORM查询操作(二)

一、条件查询

1、filter(条件)

语法:MyModel.objects.filter(属性1=值1,属性2=值2)

作用:返回包含此条件的全部的数据集

返回值:QuerySet容器对象,内部存放MyModel实例。可以当作数组来处理

说明:当多个属性在一起时为“与”关系。

2、exclude(条件)

语法:MyModel.objects.exclude(条件)

作用:返回不包含此条件的全部的数据集

3、get(条件)

语法:MyModel.objects.get(条件)

作用:返回满足条件的唯一一条数据

说明:该方法只能返回一条数据

二、非等值查询——查询谓词

定义:做更灵活的条件查询时需要使用查询谓词,类属性+'__'+谓词

说明:每一个查询谓词是一个独立的查询功能

1、__exact:等值匹配

示例:

Author.objects.filter(id__exact=1)
#等同于select * from author where id = 1

2、__contains:包含指定值

3、__startswith:以XXX开始

4、__endswith:以XXX结束

5、__gt:大于指定值

6、__gte:大于等于

7、__lt:小于

8、__lte:小于等于

9、__in:查找数据是否在指定范围内

eg:
Author.objects.filter(country__in=['中国','日本','韩国'])
#等同于select * from author where country in ('中国','日本','韩国')

10、__range:查找数据是否在指定的区间范围内

Author.objects.filter(age__range=()35,50))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值