Django 解决distinct无法去除重复数据的问题


Posted in Python onMay 20, 2020

今天需要使用Django查询一列的字段(不含重复),搞了一上午,发现这样的事情:如图:

Django 解决distinct无法去除重复数据的问题

得到的数据几乎是相等的,没有区别。

但是仔细看会发现:下面的数据比起上面的还是少了一个。

解决办法:

django的distinct在使用之前必须先使用order_by方法排序,如图:

Django 解决distinct无法去除重复数据的问题

这样就完美解决了这个问题。

补充知识:Distinct和Group by去除重复字段记录

重复记录 有两个意义,一是完全重复的记录,也即所有字段均重复的记录

二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。

1、对于第一种重复,比较容易解决,使用

select distinct * from tableName

就可以得到无重复记录的结果集。

如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除

select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp

发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。

2、这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下

假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集

select identity(int,1,1) as autoID, * into #Tmp from tableName
select min(autoID) as autoID into #Tmp2 from #Tmp group by Name
select * from #Tmp where autoID in(select autoID from #tmp2)

最后一个select即得到了Name,Address不重复的结果集(但多了一个autoID字段,实际写时可以写在select子句中省去此列)

其它的数据库可以使用序列,如:

create sequence seq1;
select seq1.nextval as autoID, * into #Tmp from tableName

zuolo: 我根据上面实例得到所需要的语句为 SELECT MAX(id) AS ID,Prodou_id,FinalDye FROM anwell..tblDBDdata GROUP BY Prodou_id,FinalDye ORDER BY id,之前一直想用Distinct来得到指定字段不重复的记录是个误区。

以上这篇Django 解决distinct无法去除重复数据的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python根据给定文件返回文件名和扩展名的方法
Mar 27 Python
用python结合jieba和wordcloud实现词云效果
Sep 05 Python
Python实现的单向循环链表功能示例
Nov 10 Python
Python中函数参数调用方式分析
Aug 09 Python
解决PyCharm的Python.exe已经停止工作的问题
Nov 29 Python
对python3.4 字符串转16进制的实例详解
Jun 12 Python
调用其他python脚本文件里面的类和方法过程解析
Nov 15 Python
Django多进程滚动日志问题解决方案
Dec 17 Python
python3 正则表达式基础廖雪峰
Mar 25 Python
python 使用多线程创建一个Buffer缓存器的实现思路
Jul 02 Python
python3列表删除大量重复元素remove()方法的问题详解
Jan 04 Python
python 批量压缩图片的脚本
Jun 02 Python
在主流系统之上安装Pygame的方法
May 20 #Python
python Django 反向访问器的外键冲突解决
May 20 #Python
Python如何实现爬取B站视频
May 20 #Python
django在开发中取消外键约束的实现
May 20 #Python
520使用Python实现“我爱你”表白
May 20 #Python
django 外键创建注意事项说明
May 20 #Python
在django admin中配置搜索域是一个外键时的处理方法
May 20 #Python
You might like
如何给phpadmin一个保护
2006/10/09 PHP
第七章 php自定义函数实现代码
2011/12/30 PHP
一个经典实用的PHP图像处理类分享
2014/11/18 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
php根据一个给定范围和步进生成数组的方法
2015/06/19 PHP
php在数据库抽象层简单使用PDO的方法
2015/11/03 PHP
浅析Yii2 GridView 日期格式化并实现日期可搜索教程
2016/04/22 PHP
javaScript parseInt字符转化为数字函数使用小结
2009/11/05 Javascript
js 数组操作之pop,push,unshift,splice,shift
2014/01/29 Javascript
js中使用replace方法完成某个字符的转换
2014/08/20 Javascript
推荐9款炫酷的基于jquery的页面特效
2014/12/07 Javascript
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
jquery实现具有收缩功能的垂直导航菜单
2016/02/16 Javascript
Bootstrap项目实战之子栏目资讯内容
2016/04/25 Javascript
JavaScript设计模式之策略模式详解
2017/06/09 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
JavaScript基础心法 深浅拷贝(浅拷贝和深拷贝)
2018/03/05 Javascript
electron 如何将任意资源打包的方法步骤
2020/04/16 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
[01:53]2016完美“圣”典风云人物:Maybe专访
2016/12/05 DOTA
Python随机生成数模块random使用实例
2015/04/13 Python
Python用5行代码实现批量抠图的示例代码
2020/04/14 Python
Python while true实现爬虫定时任务
2020/06/08 Python
html5菜单折纸效果
2014/04/22 HTML / CSS
Hunkemöller西班牙:欧洲最大的内衣连锁店
2018/08/15 全球购物
大学生党课思想汇报
2013/12/29 职场文书
2014年两会学习心得范例
2014/03/17 职场文书
校长竞聘演讲稿
2014/05/16 职场文书
室内设计专业自荐信
2014/05/31 职场文书
销售人员工作自我评价
2014/09/21 职场文书
群众路线教育实践活动学习笔记
2014/11/05 职场文书
初中毕业生自我评价
2015/03/02 职场文书
家长意见和建议怎么写
2015/06/04 职场文书
公司员工宿舍管理制度
2015/08/07 职场文书
Java实现经典游戏泡泡堂的示例代码
2022/04/04 Java/Android