取多个重复数据中的第一个

 2024-03-12 04:05:15  阅读 0

使用分析函数() over (by ... order by ...)进行分组编号,然后取出分组标签值为1的记录。目前主流数据库都支持分析函数,非常容易使用。

其中by指定按哪些字段进行分组,字段值相同的记录会编号在一起; order by 指定它们在同一组中的编号顺序。

示例(适用于SQL 2005或以上版本):

.*

从(

*,()over([手机号码][商店])

)s

.=1 -------------------------- 本文来自CSDN博客。 全文地址请点击:

多重重复数据删除:

######################################

--获取重复数据并放入表中

sql 相同字段只取一条_sql 相同字段只取一条_sql 相同字段只取一条

*

进入温度1

哪里 (

通过...分组

计数(*) > 1)

--删除原表中所有重复数据

哪里 (

来自临时 1

--对重复数据进行排序,并将第一个放回到原表中

进入 (,)

s.,s.

从 (

*, () over (按 order by) as

来自临时 1

)s

哪里。 = 1

##########################################

sql 相同字段只取一条_sql 相同字段只取一条_sql 相同字段只取一条

1、查询出重复数据,放入新表中:

身份证号、姓名

from( id,name,()over([id][any field]) from table ) a

哪里 a. >1

进入(ID,名称)

2、删除旧表中所有重复数据:

从表

其中 id in (来自新表的 id)

3、将新表中的重复数据放回到旧表中:

进入表(ID,名称)

* 从

标签: 重复 字段 编号

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码