分享一个小知识点,论坛里也常有人问这种问题,表中数据除了ID不同,其他数据一样,然后保存ID最大(或者最小)值,测试数据:

--测试数据
if not object_id(N'Tempdb..#T') is nulldrop table #T
Go
Create table #T([ID] int,[Name] nvarchar(22),[Class] int)
Insert #T
select 1,N'张三',1 union all
select 2,N'张三',2 union all
select 3,N'张三',3 union all
select 4,N'李四',1 union all
select 5,N'李四',2
Go
--测试数据结束

我们可以利用ROW_NUMBER来读取数据,或者是删除重复数据:

SELECT *
FROM
(SELECT *,ROW_NUMBER() OVER (PARTITION BY Name ORDER BY ID) AS rn --order by ID 控制取大值还是小值FROM #T
) t
WHERE t.rn = 1;
;WITH cte AS
(SELECT *,ROW_NUMBER() OVER (PARTITION BY Name ORDER BY ID) AS rn --order by ID 控制取大值还是小值FROM #T
)
DELETE FROM cte WHERE cte.rn<>1SELECT * FROM #T

结果如下:

以上我们实现了通过ROW_NUMBER来处理重复数据的问题。

SQL SERVER 利用ROW_NUMBER 删除重复数据相关推荐

  1. SQL SERVER 查询、删除重复数据

    查询删除重复数据,只保留一条记录: 1.根据单字段,查询表中该字段重复出现记录: SELECT * FROM Table WHERE Parameter IN (SELECT Parameter FR ...

  2. 利用sql语句删除重复数据

    记录原因: 昨天遇到一个问题:需要写一个sql语句删除重复数据.当时解决的办法,是先查询出重复的数据id,然后再单独写删除语句进行删除.今天想了想应该还是有其他办法解决的,研究了下可以通过一条语句就能 ...

  3. Sql server 删除重复数据

    以下内容抄自 : https://www.cnblogs.com/springsnow/p/10334469.html 非常感谢此博主,  为了防止此链接丢失, 特写此文章进行记录,以便后面使用 目录 ...

  4. 删除前10行sql oracle,sql server 如何实现删除前1000行数据

    近日,sql数据库入门学习群有朋友问到,利用sql如何删除表格的前1000行数据,是否可以实现? 如果是oracle数据库管理软件,实现起来相对简单多了delete  from 表名  where r ...

  5. 【SQL开发实战技巧】系列(九):一个update误把其他列数据更新成空了?Merge改写update!给你五种删除重复数据的写法!

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  6. sql 删除重复数据

    sql 删除重复数据 问题是这样的.今天在一个技术群里,一个群友提了一个问题: 大概是,一张学生表 student,有字段 id (自增), name, 想要删除多余的重复name 的数据,剩下id最 ...

  7. SQL删除重复数据方法

    原文:SQL删除重复数据方法 例如: id           name         value 1               a                 pp 2            ...

  8. SQL表之间复制数据、选出随机几条数据、删除重复数据、取得自增长列等操作...

    --表之间数据复制 SELECT* INTO yozhu FROM yo --复制一份表 SELECT* INTO yozhu1 FROM yo where 1<>1 --只复制表结构,无 ...

  9. 3.23学习内容,竖立seekbar,sql获取删除重复数据

    竖立的seekbar: http://blog.csdn.net/metalseed/article/details/8014758 原理: 继承AbsSeekBar 通过重写方法旋转: protec ...

最新文章

  1. 智驾汽车MAXIEYE 招聘|SLAM、深度学习、融合、规划控制工程师等岗位(校招/实习)...
  2. 第二章 数据结构(一)
  3. ChinaDNS 结合DNSMasq防dns挟持
  4. 12行代码AC——UVa 151 - Power Crisis(约瑟夫环)
  5. linux内核的冒险md来源释义# 14raid5非条块读
  6. Mybatis使用之 Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias‘User’
  7. Linux工作笔记040---Centos8.2安装mysql5.7.18_已经测试成功
  8. 大数据框架对比:Hadoop、Storm、Samza、Spark和Flink
  9. 简单电脑***《菜鸟级》
  10. Android 复杂的多类型列表视图新写法:MultiType 3.0
  11. 基于ubuntu的ARM开发环境搭建
  12. 设置WDS桥接成功,上不了网怎么办?路由器WDS无线桥接设置正确方法
  13. Java--网上银行登录及存取款业务模拟系统
  14. Cannot serialize; nested exception is org.springframework.core.serializer
  15. VR垃圾分类体验系统,VR垃圾分类知识抢答软件开发
  16. 手把手教你更改maven镜像源
  17. 只待狂欢!青岛凤凰音乐节三大主题舞台搭建完毕
  18. 武汉计算机学校中专,武汉有哪些关于计算机中专学校
  19. linux db2 删除表空间,DB2表清空数据的四种方法及技巧
  20. java linux pdf2swf_Linux PDF转换为SWF

热门文章

  1. UE4 网格体闪烁问题解决
  2. 【雕爷学编程】Arduino动手做(4)---振动传感器模块
  3. 利用Word Embedding自动生成语义相近句子
  4. 如何对Windows剪切板里的内容进行取证分析 Windows剪切板取证
  5. asp.net 网络编程_ASP.NET编程技巧
  6. 【JAVA程序设计】基于SSM的图书管理系统-有论文文档
  7. 设置gvim中横竖光标_vim注释和光标高亮行列的颜色设置
  8. uCosII移植STM32F407教程
  9. Windows下的subversion(SVN)下载安装及配置 -详细步骤
  10. 搭建全功能绿色版本的Flex Builder 3.0.1