“”"
基于双下划线的查询
“”"
# 1 年龄大于35岁的数据
# select *from table where age > 35, little
# gte => greater than equal, lte => less than equal
# res = models.Author.objects.filter(age__gt=35)
# print(res)
# 2 年龄小于35岁的数据
# res = models.Author.objects.filter(age__lt=35)
# print(res)
# 3 年龄大于等于小于等于35岁的数据
# res = models.Author.objects.filter(age__lte=35) # 小于等于
# res = models.Author.objects.filter(age__gte=35) # 大于等于
# print(res)
# 4 年龄是35, 18, 40的 where age in (35, 18, 40) => or
# res = models.Author.objects.filter(age__in=[35, 18, 40])
# print(res)
# print(res.query)
# 如何查看原生SQL, 只要是返回的是queryset对象,都可以.query
#
# 年龄在18到40岁之间的 首尾都要 where age between 18 and 40
# res = models.Author.objects.filter(age__range=[18,35])
# print(res)
# 查询出名字里面含有s的数据 模糊查询 where name like '%s%'
# res = models.Author.objects.filter(name__contains='s')
# res = models.Author.objects.filter(name__icontains='S') # 忽略大小写 ignore .gitignore 添加忽略文件
# print(res)
# 查询名字为t开头的
# res = models.Author.objects.filter(name__startswith='t')
# print(res)
# 查询名字为n结尾的
# res = models.Author.objects.filter(name__endswith='n')
# print(res)
# models.Author.objects.filter(pk=1).update(create_time='2020-10-01')
# models.Author.objects.filter(pk=2).update(create_time=