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构造icmp echo请求和实现网络探测器功能代码分享
Jan 10 Python
python基础教程之对象和类的实际运用
Aug 29 Python
详解Python中for循环的使用
Apr 14 Python
Python的Twisted框架中使用Deferred对象来管理回调函数
May 25 Python
Python2.7.10以上pip更新及其他包的安装教程
Jun 12 Python
Python神奇的内置函数locals的实例讲解
Feb 22 Python
python增加图像对比度的方法
Jul 12 Python
Python 使用多属性来进行排序
Sep 01 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
Python利用逻辑回归分类实现模板
Feb 15 Python
python实现飞船大战
Apr 24 Python
python图片验证码识别最新模块muggle_ocr的示例代码
Jul 03 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
基于php冒泡排序算法的深入理解
2013/06/09 PHP
php上传图片到指定位置路径保存到数据库的具体实现
2013/12/30 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
lnmp安装多版本PHP共存的方法详解
2018/08/02 PHP
javascript实现上传图片前的预览(TX的面试题)
2007/08/20 Javascript
juqery 学习之三 选择器 可见性 元素属性
2010/11/25 Javascript
基于JQuery实现仿网易邮箱全屏动感滚动插件fullPage
2015/09/20 Javascript
使用JavaScript实现弹出层效果的简单实例
2016/05/31 Javascript
jQuery编写设置和获取颜色的插件
2017/01/09 Javascript
js实现tab选项卡切换功能
2017/01/13 Javascript
JS中使用正则表达式g模式和非g模式的区别
2017/04/01 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
Vue组件通信实践记录(推荐)
2017/08/15 Javascript
vue-cli如何引入bootstrap工具的方法
2017/10/19 Javascript
vue做网页开场视频的实例代码
2017/10/20 Javascript
vue+webpack 打包文件 404 页面空白的解决方法
2018/02/28 Javascript
详解用Webpack与Babel配置ES6开发环境
2019/03/12 Javascript
vue实现移动端拖动排序
2020/08/21 Javascript
[50:20]DOTA2上海特级锦标赛主赛事日 - 5 总决赛Liquid VS Secret第四局
2016/03/06 DOTA
[00:32]2018DOTA2亚洲邀请赛Liquid出场
2018/04/03 DOTA
python获取各操作系统硬件信息的方法
2015/06/03 Python
Python爬取qq music中的音乐url及批量下载
2017/03/23 Python
Python如何生成树形图案
2018/01/03 Python
python随机数分布random均匀分布实例
2019/11/27 Python
Python中logging日志记录到文件及自动分割的操作代码
2020/08/05 Python
基于第一个PhoneGap(cordova)的应用详解
2013/05/03 HTML / CSS
初中体育教学反思
2014/01/14 职场文书
高中军训感言800字
2014/03/05 职场文书
高中教师评语大全
2014/04/25 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
机关干部四风问题自查报告及整改措施
2014/10/26 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
2016教师读书思廉心得体会
2016/01/23 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
使用react+redux实现计数器功能及遇到问题
2021/06/02 Javascript
Win11 vmware不兼容怎么办?Win11与VMware虚拟机不兼容的解决方法
2023/01/09 数码科技