zoukankan      html  css  js  c++  java
  • Python--day69--单表查询之神奇的双下划线

    单表查询之神奇的双下划线:

     

    单表查询之神奇的双下划线

    复制代码
    models.Tb1.objects.filter(id__lt=10, id__gt=1)   # 获取id大于1 且 小于10的值
     
    models.Tb1.objects.filter(id__in=[11, 22, 33])   # 获取id等于11、22、33的数据
    models.Tb1.objects.exclude(id__in=[11, 22, 33])  # not in
     
    models.Tb1.objects.filter(name__contains="ven")  # 获取name字段包含"ven"的
    models.Tb1.objects.filter(name__icontains="ven") # icontains大小写不敏感
     
    models.Tb1.objects.filter(id__range=[1, 3])      # id范围是1到3的,等价于SQL的bettwen and
     
    类似的还有:startswith,istartswith, endswith, iendswith 
    
    date字段还可以:
    models.Class.objects.filter(first_day__year=2017)
    复制代码

    代码示例:

     1 import os
     2 
     3 if __name__ == '__main__':
     4     #加载Djang00项目的配置信息
     5     os.environ.setdefault("DJANGO_SETTINGS_MODULE", "ormday69.settings")
     6     #导入Django,并启动Django项目
     7     import django
     8     django.setup()
     9 
    10     from app01 import models
    11 
    12 
    13 
    14 
    15 #单表查询之神奇的双下划线
    16     #查询id值大于1小于4的值
    17     ret = models.Person.objects.filter(id__lt=4,id__gt=1)
    18     print(ret)
    19     #in
    20     #查询id在[1,3,5,7]中的结果
    21     ret = models.Person.objects.filter(id__in = [1,3,5,7])
    22     print(ret)
    23     ret = models.Person.objects.exclude(id__in=[1, 3, 5, 7])
    24     print(ret)
    25     #contains 字段包含指定值的
    26     #icontains 忽略大小写包含指定值
    27     ret = models.Person.objects.filter(name__contains="")
    28     print(ret)
    29     #range
    30     #判断id值在哪个区间的SQL语句   between and 1<= <=3
    31     ret = models.Person.objects.filter(id__range=[1,3])
    32     print(ret)
    33     #日期和事件段还可以有以下写法
    34     ret =  models.Person.objects.filter(birthday__year=2000)
    35     print(ret)
    36     ret = models.Person.objects.filter(birthday__year=2000,birthday__month=5)
    37     print(ret)

     

     

     

  • 相关阅读:
    Unity UGUI基础之Text
    Unity UGUI之Canvas&EventSystem
    ROS(indigo)国外开源示例包括多机器人控制等基于V-Rep和Gazebo的仿真
    lk中内联调用的dsb()
    svn 回退/更新/取消至某个版本命令详解
    ubuntu16.04中可以用于教学的有趣的应用
    高级UI晋升之布局ViewGroup(四)
    高级UI晋升之常用View(三)下篇
    高级UI晋升之常用View(三)中篇
    高级UI晋升之常用View(三)上篇
  • 原文地址:https://www.cnblogs.com/xudj/p/10488641.html
Copyright © 2011-2022 走看看