Django ORM 查询表中某列字段值的方法


Posted in Python onApril 30, 2020

1.什么是ORM

  • ORM 全拼Object-Relation Mapping.
  • 中文意为 对象-关系映射.
  • 在MVC/MVT设计模式中的Model模块中都包括ORM

2.ORM优势

(1)只需要面向对象编程, 不需要面向数据库编写代码.

  • 对数据库的操作都转化成对类属性和方法的操作.
  • 不用编写各种数据库的sql语句.

(2)实现了数据模型与数据库的解耦, 屏蔽了不同数据库操作上的差异.

  • 不在关注用的是mysql、oracle...等.
  • 通过简单的配置就可以轻松更换数据库, 而不需要修改代码.

3.ORM劣势

相比较直接使用SQL语句操作数据库,有性能损失.
根据对象的操作转换成SQL语句,根据查询的结果转化成对象, 在映射过程中有性能损失.

下面看下Django ORM 查询表中某列字段值,详情如下:

场景:

有一个表中的某一列,你需要获取到这一列的所有值,你怎么操作?

解决办法:

有一个model为:Event

方式一:

获取内容:
Event.objects.values('title')

输出内容:
<QuerySet [{'title': '测试feed'}, {'title': '今天'}, {'title': '第三个日程测试'}, {'title': '第四个日程测试'}, {'title': '第五个测试日程'}]>

方式一获取到的是一个QuerySet,内容是键值对构成的,键为表的列名,值为对应的每个值。

方式二:

获取内容:
Event.objects.values_list('title')

输出内容:
<QuerySet [('测试feed',), ('今天',), ('第三个日程测试',), ('第四个日程测试',), ('第五个测试日程',)]>

方式二获取到的也是一个QuerySet,但是内容是元祖形式的查询列的值。

但是我们想要的是这一列的值呀,这怎么是一个QuerySet,而且还包含了列名,或者是被包含在了元祖中?

查看高阶用法,告诉你怎么获取一个值的list,如:

['测试feed', '今天', '第三个日程测试', '第四个日程测试', '第五个测试日程']

到此这篇关于Django ORM 查询表中某列字段值的文章就介绍到这了,更多相关django orm 字段值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python中range()与xrange()用法分析
Sep 21 Python
对tf.reduce_sum tensorflow维度上的操作详解
Jul 26 Python
OpenCV+python手势识别框架和实例讲解
Aug 03 Python
基于python指定包的安装路径方法
Oct 27 Python
python 搭建简单的http server,可直接post文件的实例
Jan 03 Python
Python中super函数用法实例分析
Mar 18 Python
Python中输入和输出(打印)数据实例方法
Oct 13 Python
Python协程操作之gevent(yield阻塞,greenlet),协程实现多任务(有规律的交替协作执行)用法详解
Oct 14 Python
python中wheel的用法整理
Jun 15 Python
Python 字典一个键对应多个值的方法
Sep 29 Python
Python爬虫教程知识点总结
Oct 19 Python
python实现学生信息管理系统(面向对象)
Jun 05 Python
Python pip install如何修改默认下载路径
Apr 29 #Python
Django 5种类型Session使用方法解析
Apr 29 #Python
PyQt5连接MySQL及QMYSQL driver not loaded错误解决
Apr 29 #Python
Python退出时强制运行一段代码的实现方法
Apr 29 #Python
pyinstaller将含有多个py文件的python程序做成exe
Apr 29 #Python
如何使用python切换hosts文件
Apr 29 #Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
Apr 29 #Python
You might like
PHP获取HTTP body内容的方法
2018/12/31 PHP
简单的js分页脚本
2009/05/21 Javascript
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
jQuery对象[0]是什么含义?
2010/07/31 Javascript
初学Jquery插件制作 在SageCRM的查询屏幕隐藏部分行的功能
2011/12/26 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
判断ie的两种简单方法
2013/08/12 Javascript
使用jquery hover事件实现表格的隔行换色功能示例
2013/09/03 Javascript
javascript scrollTop正解使用方法
2013/11/14 Javascript
javascript初学者常用技巧
2014/09/02 Javascript
Javascript函数的参数
2015/07/16 Javascript
jQuery实现简单滚动动画效果
2016/04/07 Javascript
详解angular2实现ng2-router 路由和嵌套路由
2017/03/24 Javascript
详解Angular 4.x NgIf 的用法
2017/05/22 Javascript
vue二级路由设置方法
2018/02/09 Javascript
解决vue页面刷新或者后退参数丢失的问题
2018/03/13 Javascript
基于js中的存储键值对以及注意事项介绍
2018/03/30 Javascript
layui下拉列表select实现可输入查找的方法
2019/09/28 Javascript
p5.js实现简单货车运动动画
2019/10/23 Javascript
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
详细介绍Python中的偏函数
2015/04/27 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
对python实现二维函数高次拟合的示例详解
2018/12/29 Python
Python 编程速成(推荐)
2019/04/15 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
pandas的to_datetime时间转换使用及学习心得
2019/08/11 Python
python 实现按对象传值
2019/12/26 Python
三只松鼠官方旗舰店:全网坚果销售第1
2017/11/25 全球购物
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
应届生护士求职信
2013/11/01 职场文书
网上签名寄语活动留言
2014/01/18 职场文书
《祁黄羊》教学反思
2014/04/22 职场文书
擅自离岗检讨书
2014/09/12 职场文书
党旗在我心中演讲稿
2014/09/15 职场文书
为什么阅读对所有年龄段的孩子都很重要?
2019/07/08 职场文书
MySQL数据库完全卸载的方法
2022/03/03 MySQL