Django(part25)--字段查询

学习笔记,仅供参考



数据库的操作(CRUD操作)


字段查询


字段查询是指指定SQL语句中利用WHERE子句进行查询,字段查询需要通过QuerySet的filter(), exclude() 和 get()方法的关键字参数指定。


  • 举个例子
models.Author.objects.filter(age__gt = 20)
#对应的sql语句
SELECT .... WHERE age > 20;

查询谓词


  • __exact : 等值匹配
models.Author.objects.filter(id__exact=1)
#对应的sql语句
SELECT ... WHERE id = 1

  • __contains : 包含指定值
models.Author.objects.filter(name__contains='山')
#对应的sql语句
SELECT ... WHERE name like '%山%'

  • __startswith : 以 XXX 开始,区分大小写
models.Author.objects.filter(name__startswith='小')
#对应的sql语句
SELECT ... WHERE name LIKE '小%';

  • __gt : 大于

  • gte:大于等于

  • __lt : 小于

  • __lte : 小于等于

  • __in : 查找数据是否在指定范围内
models.Author.objects.filter(country__in=['中国','日本','韩国'])
#对应的sql语句
SELECT ... WHERE country in ('中国','日本','韩国')

  • __range: 查找数据是否在指定的区间范围内
# 查找年龄在某一区间内的所有作者
models.Author.objects.filter(age__range=(20,30))
#对应的sql语句
SELECT ... WHERE age BETWEEN 20 and 30;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章