Sql去重查询数据

2023-10-27

最近在工作过程中,面试过程中, 部分求职者或者同事,对sql怎么去重查询,不是太熟练

今天下午忙里偷闲, 整理了一下 

其实sql基本的查询 ,还是蛮有意思,   下面是我大致整理的几种去重查询 

1.存在2条一样的数据,  使用distinct

eg:   select distinct * from table(表名) where  条件

 

2.存在部分字段相同(有key, id  即唯一键) 如:id列不同,id类型为int,自增字段,使用聚合函数max或其他

eg:   select * from  table  where  id  in (

  select  max(id)  from  table  group by  [去重复字段表1,.....] having COUNT(*)>1

  )

 3.没有唯一键 ID,  需要借助创建临时表,来解决

 eg:  select  indentity (int,1,1) as  id , * into newtable(临时表)  from table

 select * from newtable where  id in  (select max(id)  from newtable group by [去重复字段表1,.....]) drop table newtable

4. id列不同,id类型为uniqueidentifier

① 使用row_number() over() he partition by  给每一组添加行号

select *,(row_number() Over(partition By'分组字段' order By '排序字段')) RowNum from

(select * from table where '分组字段'in (

select '分组字段' from table group by '分组字段' having count(*) >1)t1)

 

②将行号=1的数据插入临时表中

Select * into #A from (‘上面的sql语句’) t2 where t2.RowNum=1

 

注意:

1.row_number() over()是给行加行号的

2.partition  by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组 

 详细如: https://blog.csdn.net/wuyoudeyuer/article/details/91387434

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Sql去重查询数据 的相关文章

  • QT 关于如何生成包含多个自定义类的DLL以及如果调用

    新年新气象 新年第一篇 近期想把几个常用的函数的生成dll 这样方便更新的时候 只更新dll就可以了 否则又是发布又是打包比较麻烦 网上有很多例子 不过大部分是简单调用个函数 我遇到的问题是函数中有多个自定义类 下面用两种方法来解决这一问题
  • S7-300哪些24V数字量输入模块需要电源,与电源如何连接

    西门子S7 300哪些24V数字量输入模块需要电源 与电源如何连接 下表说明了S7 300 PLC的24V数字量输入模块的电源插针连接 L M 不在此表上的S7 300 PLC数字量输入模块不需要外部电源 表1 S7 300 PLC模块电源
  • GBT9706.1中B型BF型和CF型各表示什么意思的啊?

    就拿心电仪为例 根据跟患者接触部件的应用部分的防电击分类 B型 BF型 CF型 F型应用部分具有更高的保护要求 漏电流 B代表身体 C代表心脏 B型设备 对电击有特定防护程度的设备 允许漏电流 保护接地连接 若有 的可靠性 BF型 有F型应
  • AI助力航母大变脸:无人机航母浮出海面

    来源 无人机 作者 魏岳江 2023年4月10日 土耳其打造的首艘 无人机航空母舰 正式入列海军 总统雷杰普 塔伊普 埃尔多安出席了这艘名为 阿纳多卢 号的轻型航母服役仪式 该航母长231米 宽32米 排水量逾2 7万吨 满载时最高航速20
  • name="viewport" width="device-width" 到底都是啥

    TOC 参考文件 CSS Pixel与绝对像素 参考文件 移动端适配 dpr浅析 参考文件 pixel is not a pixel is not a pixel 参考文件 此像素非彼像素 参考文件 关于HTML5中meta name vi
  • Node JS 的基本使用

    1 概述 1 什么是Node js Node js 是一个基于 Chrome V8 引擎 的JavaScript 运行环境 2 什么是V8引擎 V8引擎是一款专门解释和执行JS代码的虚拟机 任何程序只要集成了V8引擎都可以执行JS代码 例如
  • 基于SSM+layui实现用户登录功能

    一 搭建SSM框架环境 1 Spring配置文件 applicationContext xml
  • 相随与欢-彩色泡泡机的设计与实现

    相随与欢 长安大学 信息工程学院 人工智能系 大一下 面向对象课程设计 彩色泡泡机题目详解 与欢行 一 题目与需求分析 基于Qt框架的GUI设计与实现 需求 1 绘制泡泡 颜色 大小等配置信息随机产生 2 点击游戏区域即可产生泡泡 3 泡泡
  • 从sampleMNIST看什么是TensorRT

    kagula 2021 11 15 内容概要 在想什么是TensorRT 就这样做个总结 写下自己的理解 环境 On Win10 Pro OS 1 cuda v11 4 3 2 cudnn v8 2 4 3 TensorRT v8 2 0
  • unity接入VR设备(0-1)

    unity接入VR设备 unity2018 4 2f1 1 需要安装Steam 去百度Steam官网 下载并安装Steam 2 登录Steam后 搜索SteamVR 版本1 16 10 并安装 3 在Package Manager中搜索Op
  • 正则提取文章里面的一级标题和对应的一级标题内容

    最近公司项目有个需求 富文本编辑器上传一篇文章后 需要对文章内容里面的一级标题和对应的标题内容做提取处理 然后文章展示的时候就可以用来做锚链接导航处理 此功能主要用到了以下正则 const reg
  • (原)使用mkl中函数LAPACKE_sgesv计算矩阵的逆矩阵

    转载请注明出处 http www cnblogs com darkknightzh p 5578027 html 参考文档 mkl的说明文档 lapack int LAPACKE sgesv int matrix layout lapack
  • Firefox默认可以调用JSON.stringify而IE却不行

    Firefox默认可以调用JSON stringify而IE却不行 如果使用IE浏览器的话则需要加上 jquery json 通过 toJSON 使用
  • 科技赋能,教育革新——大步迈向体育强国梦

    在 全民健身 体育强国建设 战略的推进下 体育考试成绩被纳入重要升学考试且分值不断提高 体育科目的地位逐步上升到前所未有的高度 在此趋势下 体育教学正演变出更多元化 个性化的需求 然而现实中却面临不少问题 学生对体育学科的兴趣不足 体育师资

随机推荐

  • IOS 内购IAP 自动订阅收据验证返回结构体

    exclude old transactions 参数等于true时 数据通过json decode 转换后 1 首次订阅支付通过票据进行验单的返回结构体 Array status gt 0 environment gt Sandbox r
  • doom3 源代码评测 1

    原文地址 http fabiensanglard net doom3 2012年6月8日 DOOM3源代码评测 简介 第1部分 共6部分 gt gt 2011年11月23日 id软件保持传统 并发布了其以前引擎的源代码 这一次是轮到了idT
  • 通达信版弘历软件指标_[转载]弘历软件指标源码

    很多炒股的朋友都迷信指标公式 笔者以前也酷爱研究和钻研 现将收集和破译的弘历 首富软件指标与大家分享 炒股靠技术 只有潜心研究 细细钻研 慢慢体会才能终成正果 卖软件和炒股指标的如果真正的保证盈利为什么要卖给你呢 弘历软件指标 1 强势信号
  • 1>C:\code\Project1\x64\Debug\Project1.exe : fatal error LNK1120: 1 个无法解的外部命令

    问题 代码编译显示没有错 但运行的时候出现了题目上的问题 解决 头文件中的函数声明检查没问题 但在cpp文件中函数定义的名字错了一个字母 所以运行失败 i 和 l 写错很难察觉 以上
  • 2023 年 SpringBoot 学习路线(一)

    下面是 Spring Boot 的详细学习路线和代码示例 一 Spring Boot 简介 Spring Boot 是由 Spring 官方提供的一个快速开发框架 它基于 Spring 框架 简化了 Spring 应用的开发配置和部署流程
  • 10个Hadoop的应用场景

    谁在用 Hadoop这是个问题 在大数据背景下 Apache Hadoop已经逐渐成为一种标签性 业界对于这一开源分布式技术的了解也在不断加深 但谁才是 Hadoop的最大用户呢 首先想到的当然是它的 发源地 像Google这样的大型互联网
  • Vue项目build打包部署到Tomcat后,刷新报404错误解决方案

    问题描述 一 更新依赖 并打包项目 cd root jenkins workspace v test npm installcd root jenkins workspace v test npm run build 二 发布Tomcat
  • AI绘图实战(十):制作线稿矢量图之包头巾的女人,画矢量图/生成矢量图/导出矢量图/直出svg/vector studio插件使用

    S AI能取代设计师么 I 至少在设计行业 目前AI扮演的主要角色还是超级工具 要顶替 除非甲方对设计效果无所畏惧 预先学习 安装及其问题解决参考 Windows安装Stable Diffusion WebUI及问题解决记录 运行使用时问题
  • pytorch——两个全连接神经网络的通用模型

    文章目录 用于分类的全连接神经网络 用于拟合的全连接神经网络 代码中都加了详细的注释 因此文章中不再赘述 用于分类的全连接神经网络 loss函数采用Cross Entropy Loss 优化器采用随机梯度下降优化器 SGD 激活函数 ReL
  • KMP,从常规思路到KMP的转变,KMP到底怎么想出来的?

    1 算法简介 KMP算法的名字是由创造出该算法的三位工程师的名字组成的 该算法是为了解决在字符串中匹配某个字串的问题 在我们的生活中经常会遇到在字符串中匹配某个字串的情况 例如我们常在某个文本中查找某个部分 这时候就需要用到字符串匹配字串来
  • vue初始化项目时报错: Error: Cannot find module ‘vue-template-compiler‘

    在初始化Vue3的项目时 按照正常流程创建项目 到最后阶段cmd窗口报错 Error Cannot find module vue template compiler 不能找到 vue template compiler 模块 出现这个问题
  • 解决shell脚本不能激活conda环境

    我想写个bash脚本激活Python3 6环境 使用tensorboard可视化查看数据 conda activate tf tensorboard logdir logs port 10010 傻逼报错 用conda init bash也
  • MySQL中的用户管理

    系列文章目录 MySQL常见的几种约束 MySQL中的函数 MySQL中的事务 MySQL中的视图 MySQL中的索引 文章目录 系列文章目录 前言 一 用户管理 1 用户管理入门 2 用户管理操作及示例 二 权限管理 1 权限管理语法 2
  • Spring Boot logback 日志配置

    Logback 使用 默认情况下 Spring Boot会用Logback来记录日志 并用INFO级别输出到控制台 在运行应用程序和其他例子时 你应该已经看到很多INFO级别的日志了 从上图可以看到 日志输出内容元素具体如下 时间日期 精确
  • 45岁程序员存款80万大胆裸辞,追求人身自由,网友:羡慕嫉妒恨

    最近知乎上的一个问题突然火了 原题如下 对于这个问题你的答案是什么呢 下面的一条回答获得了网友好几千的点赞 一起来看看 答主是一位45岁的程序员 在中型互联网公司 在回答中他称自己已经提出了离职 年底就能彻底歇业 而他的太太42岁 目前也在
  • ArrayList和List的主要区别

    主要区别就是ArrayList不安全 List和ArrayList的用法是不同的 List
  • 2022 CISCN 创新能力实践赛初赛WP

    WP来自齐鲁师范学院网络安全社团 文章目录 MISC ez usb everlasting night babydisk WEB Ezpop online crt PWN login nomal CRY 基于挑战码的双向认证1 基于挑战码的
  • python 爬虫之 爬取网页并保存(简单基础知识)

    抓取网页效果图 代码在最后 基础知识认识 首先导入所需要的库 from fake useragent import UserAgent 头部库 from urllib request import Request urlopen 请求和打开
  • Tomcat远程访问不到的问题

    Android老人学SpringBoot Tomcat在Linux端部署 远程访问不到的解决思路 解决思路 Tomcat在Linux端部署 远程访问不到的解决思路 Linux环境配置 服务器部署等不详细说 默认大家已经做好了 老人小白 今天
  • Sql去重查询数据

    最近在工作过程中 面试过程中 部分求职者或者同事 对sql怎么去重查询 不是太熟练 今天下午忙里偷闲 整理了一下 其实sql基本的查询 还是蛮有意思 下面是我大致整理的几种去重查询 1 存在2条一样的数据 使用distinct eg sel