当前位置: 首页 > news >正文

安徽工程建设信息网站进皖企业域名注册服务机构

安徽工程建设信息网站进皖企业,域名注册服务机构,虚拟主机wordpress安装,一起看地图app下载手机版工作中使用SQL对数据进行处理计算时可能会遇到这样的问题;读取的表数据会有重复,或者我们关注的几个字段的数据会有重复,直接使用原表数据会引起计算结果不准或者做表连接时产生笛卡尔积。 本文记录使用SQL进行数据去重的几种算法。 distinc…

工作中使用SQL对数据进行处理计算时可能会遇到这样的问题;读取的表数据会有重复,或者我们关注的几个字段的数据会有重复,直接使用原表数据会引起计算结果不准或者做表连接时产生笛卡尔积。
本文记录使用SQL进行数据去重的几种算法。

distinct关键字去重

distinct关键字加在对应字段前可以实现对改字段结果的去重查询,distinct同样可以加在多个字段前实现按照多个字段结果的去重。

-- 单列去重
select distinct field_a 
from tableName;
-- 多列去重
select distinct field_a,field_b,.. 
from tableName;
group by分组去重

使用group by方法进行去重的原理很简单:按照某个或几个字段进行分组,那么每一组(分组字段取值相同)只会保留一条记录,甚至可以在select分组字段后面使用聚合函数产生每组的一个聚合结果。

-- 分组去重实现
select field_a,field_b,field_c 
from tableName 
group by field_a,field_b,field_c;
-- 分组去重后加几列聚合字段
select field_a,field_b,field_c,count(*),count(distinct field_d),sum(field_e) 
from tableName 
group by field_a,field_b,field_c;
窗口函数去重

窗口函数与聚合函数类似,聚合函数作用于分组后,对每组产生一个计算结果,窗口函数在OVER()里定义分组和排序,但是会对其中的每一行记录进行函数计算返回结果,其结果是没有减少原表行数但是也达到了分组排序等计算结果。

-- 窗口函数去重实现
-- row_number()对每组原来n行数据产生1-n对应的排序rk,即使有重复值rk会累加,也不会重复,适合用来去重
with tmp_table as(
select*,row_number() over(partition by field_a,field_b order by field_c) as rk
fromtableName
)selectfield_a,field_b
fromtmp_table
where rk=1;
http://www.yayakq.cn/news/152270/

相关文章:

  • 中国品牌网站个人做房产网站
  • wordpress图片质量插件做seo网站标题用什么符号
  • 网站上线之前做哪些工作怎么把网站做火
  • 网站建设倒计时模板大学毕业做网站插画师好吗
  • 做百度企业网站wordpress分类目录title
  • 响应式网站视频胶州网站建设电话
  • 天正电气网站建设专门做免费东西试吃的网站
  • 陕西网站备案 多久页面设计多少钱
  • 宇泽佛山网站建设江门网站推广策划
  • 网站推广的方法搜索引擎网站设计工程师
  • 网站与app的区别自己做的网站发布详细步骤
  • 男的女的做那个视频网站国外著名室内设计网址
  • 交流建设网站南宁正规公众号网站建设推广
  • 南庄网站建设长沙网站建设公司哪家专业
  • 功能性的网站平价建网站格
  • 聊城企业做网站推广源码之家关闭了
  • 山东省住房城乡建设厅网站首页小程序注册条件
  • 成都网站优化网移动商城积分
  • 大连海外网站建设收录
  • 网站营销建设公司农家乐网站规划与建设方案
  • 郑州 互联网 公司网站长宁制作网站
  • 2017网站制作报价单cms系统做漫画网站
  • 淘宝网站是谁做的许昌做网站的公司
  • 设计公司网站源码重庆高端网站制作
  • 微信手机官方网站wordpress批量导入txt
  • 网站建设国外拂去其做哪种类型网站赚钱
  • vs做网站苏州seo排名优化费用
  • 响应式网站设计教程代做网站地图
  • 北京网站建设公司拟随州网站
  • 微网站建设代理商深圳航空公司是国企吗