前提(初始数据)

django_study.app01.views.py:新建一个underline_select_db视图函数
from django.shortcuts import render # 导入显示页面的模块
from django.http import HttpResponse # 导入显示字符串的模块
from .models import * # 导入操作的模型类
# Create your views here.
def underline_select_db(request):
return HttpResponse("查询成功")
django_study.django_study.urls:绑定url与视图函数
url(r'^underline_select_db/$', underline_select_db)
gt 大于
def underline_select_db(request):
# 筛选出年龄大于22的
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__gt=22).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(两条数据满足条件)
lt小于
def underline_select_db(request):
# 筛选出年龄小于20的
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__lt=20).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(一条数据满足条件)
gte大于等于
def underline_select_db(request):
# 筛选出年龄大于等于22的
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__gte=22).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(四条数据满足条件)
lte小于等于
def underline_select_db(request):
# 筛选出年龄小于等于20的
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__lte=20).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(两条数据满足条件)
逗号表示and,需都满足
def underline_select_db(request):
# 筛选出年龄大于20小于22
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__gt=20, age__lt=22).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(两条数据满足条件)
in表示包含(精准查询)
def underline_select_db(request):
# 取出name为"suner"的数据
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(name__in={"suner"}).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(一条数据满足条件)
exclude+in表示not in:不包含(精准查询)
def underline_select_db(request):
# 取出age不为19,20,21,22的数据
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.exclude(age__in={19,20,21,22}).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(两条数据满足条件)
contains模糊匹配,区分大小写
icontains模糊匹配,不区分大小写
def underline_select_db(request):
# 取出name中包含"suner"的数据
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(name__contains="suner").values("name")
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(七条数据满足条件)
range 表示范围,从什么到什么
def underline_select_db(request):
# 取出年龄为10~20的数据(都是闭区间)
# user_list用来存放满足条件的用户信息
user_list = []
res = User.objects.filter(age__range={10,20}).values()
for i in res:
user_list.append(i)
return HttpResponse("查询结果为:%s"%user_list)
启动状态运行后查看(两条数据满足条件)