djang常用查询SQL语句的使用代码


Posted in Python onFebruary 15, 2019

将django语法和sql对应一下,希望对大家有所帮助

查询单个列的值

story.object.values_list("url", flat=True)
SELECT `story`.`url` FROM `hbtc_story` WHERE `story`.`status` = resolved

AND查询

Stories.objects.filter(Q(status='resolved') & Q(status='developing'))
SELECT * FROM `story` WHERE (`story`.`status` = resolved AND `story`.`status` = developing)

或查询

Stories.objects.filter(Q(status='resolved') | Q(status='developing'))
SELECT * FROM `story` WHERE (`story`.`status` = resolved OR `story`.`status` = developing)

NOT查询

Stories.objects.filter(~Q(status='resolved'))
SELECT * FROM `story` WHERE NOT (`story`.`status` = resolved)

查询为空

Stories.objects.filter(status__isnull=True)
SELECT * FROM `story` WHERE `story`.`plan_id_id` IS NULL

like查询

Stories.objects.filter(status__contains='resolved')
SELECT * FROM `story` WHERE `story`.`status` LIKE BINARY %resolved%;
Stories.objects.filter(status__endswith='resolved')

SELECT * FROM `story` WHERE `story`.`status` LIKE BINARY %resolved;
Stories.objects.filter(status__istartswith='resolved')

SELECT * FROM `story` WHERE `story`.`status` LIKE BINARY resolved%;

in查询

Stories.objects.filter(status__in=('resolved',))
SELECT * FROM `story` WHERE `story`.`status` IN (resolved) ;

distinct查询

story.object.values_list("status", flat=True).distinct()
SELECT DISTINCT `story`.`status` FROM `story`

具体示例代码

Django查询SQL语句

djang常用查询SQL语句的使用代码

# 1 res=models.Book.objects.all()
  # print(res)#<QuerySet [<Book: Book object>, <Book: Book object>, <Book: Book object>, <Book: Book object>, <Book: Book object>, <Book: Book object>]>

  #2 res=models.Book.objects.filter(price='555')
  # print(res)#<QuerySet [<Book: 海贼王>, <Book: 哆啦A梦>]>

  #3 res=models.Book.objects.get(nid=2)
  # print(res.price)#三月的狮子
  # res=models.Book.objects.get(nid=10)
  # print(res)#只能用于一个对象的里面

  #4 res=models.Book.objects.exclude(price='555')
  # print(res)#<QuerySet [<Book: 百变小樱>, <Book: 三月的狮子>, <Book: 水星领航员>, <Book: 火影忍者>]>

  #5 res=models.Book.objects.values('title','publishDate')
  # print(res)#<QuerySet [{'title': '百变小樱', 'publishDate': datetime.date(2000, 8, 8)}, {'title': '三月的狮子', 'publishDate': datetime.date(2017, 10, 19)}, {'title': '水星领航员', 'publishDate': datetime.date(2004, 2, 23)}, {'title': '火影忍者', 'publishDate': datetime.date(1996, 1, 2)}, {'title': '海贼王', 'publishDate': datetime.date(1995, 2, 2)}, {'title': '哆啦A梦', 'publishDate': datetime.date(1969, 12, 31)}]>

  #6 res=models.Book.objects.values_list('title','price')
  # print(res)#<QuerySet [('百变小樱', Decimal('155.00')), ('三月的狮子', Decimal('114.00')), ('水星领航员', Decimal('999.99')), ('火影忍者', Decimal('99.20')), ('海贼王', Decimal('555.00')), ('哆啦A梦', Decimal('555.00'))]>

  #7 res=models.Book.objects.filter(price='555').distinct()
  # print(res)

  #8 res=models.Book.objects.count()
  # print(res) 6

  #9 res=models.Book.objects.first()
  # print(res)#百变小樱

  #10 res=models.Book.objects.exists()
  # print(res)#True

####################################################
  #1 res=models.Book.objects.filter(price__gt=200 )
  # print(res)#<QuerySet [<Book: 水星领航员>, <Book: 海贼王>, <Book: 哆啦A梦>]>
  #
  #2 res=models.Book.objects.filter(price__lte=555,price__gte=114)
  # print(res)#<QuerySet [<Book: 百变小樱>, <Book: 三月的狮子>, <Book: 海贼王>, <Book: 哆啦A梦>]>

  #3 res=models.Book.objects.filter(publishDate__year=2017)
  # print(res)#<QuerySet [<Book: 三月的狮子>]>

  #4 res=models.Book.objects.filter(title__startswith='水')
  # print(res)#<QuerySet [<Book: 水星领航员>]>

  #5 res=models.Book.objects.filter(title__contains='小')
  # print(res)#<QuerySet [<Book: 百变小樱>]>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python编写脚本获取手机当前应用apk的信息
Jul 21 Python
Windows下python2.7.8安装图文教程
May 26 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
May 17 Python
详解python中*号的用法
Oct 21 Python
Python 复平面绘图实例
Nov 21 Python
python实现矩阵和array数组之间的转换
Nov 29 Python
深入理解Tensorflow中的masking和padding
Feb 24 Python
Python基于Tkinter编写crc校验工具
May 06 Python
如何基于Python爬取隐秘的角落评论
Jul 02 Python
用python对excel进行操作(读,写,修改)
Dec 25 Python
详解matplotlib绘图样式(style)初探
Feb 03 Python
Matplotlib可视化之添加让统计图变得简单易懂的注释
Jun 11 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 #Python
Python提取支付宝和微信支付二维码的示例代码
Feb 15 #Python
Python实现的IP端口扫描工具类示例
Feb 15 #Python
Python标准库使用OrderedDict类的实例讲解
Feb 14 #Python
Python从文件中读取数据的方法讲解
Feb 14 #Python
python爬取cnvd漏洞库信息的实例
Feb 14 #Python
基于python历史天气采集的分析
Feb 14 #Python
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
让你同时上传 1000 个文件 (一)
2006/10/09 PHP
PHP file_get_contents设置超时处理方法
2013/09/30 PHP
php短网址和数字之间相互转换的方法
2015/03/13 PHP
laravel 5.3 单用户登录简单实现方法
2019/10/14 PHP
PHP程序员简单的开展服务治理架构操作详解(三)
2020/05/14 PHP
在textarea文本域中显示HTML代码的方法
2007/03/06 Javascript
js中将字符串转换成json的三种方式
2011/01/12 Javascript
js展开闭合效果演示代码
2013/07/24 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
Javascript学习笔记之 函数篇(三) : 闭包和引用
2014/11/23 Javascript
JavaScript中的getTime()方法使用详解
2015/06/10 Javascript
jQuery实现自定义checkbox和radio样式
2015/07/13 Javascript
日常收集整理的JavaScript常用函数方法
2015/12/10 Javascript
Javascript缓存API
2016/06/14 Javascript
js仿微信公众平台打标签功能
2017/04/08 Javascript
vue实现商城上货组件简易版
2017/11/27 Javascript
JS表单传值和URL编码转换
2018/03/03 Javascript
vue组件详解之使用slot分发内容
2018/04/09 Javascript
PM2自动部署代码步骤流程总结
2018/12/10 Javascript
js使用cookie实现记住用户名功能示例
2019/06/13 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
vue 在服务器端直接修改请求的接口地址
2020/12/19 Vue.js
详解Vite的新体验
2021/02/22 Javascript
Python构造函数及解构函数介绍
2015/02/26 Python
Python3中bytes类型转换为str类型
2018/09/27 Python
Pandas之MultiIndex对象的示例详解
2019/06/25 Python
Python imread、newaxis用法详解
2019/11/04 Python
Pycharm+Python工程,引用子模块的实现
2020/03/09 Python
解决Django中checkbox复选框的传值问题
2020/03/31 Python
详解python对象之间的交互
2020/09/29 Python
交通事故代理词范文
2015/05/23 职场文书
英雄儿女观后感
2015/06/09 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
分享python函数常见关键字
2022/04/26 Python