sql 表中删除字段重复的行

Id    Email    UserName
1    [email protected]    TaiseerJoudeh
2    [email protected]    HasanAhmad
3    [email protected]    MoatasemAhmad
4    [email protected]    SalmaTamer
5    [email protected]    AhmadRadi
6    [email protected]    BillGates
7    [email protected]    ShareefKhaled
8    [email protected]    AramNaser
9    [email protected]    LaylaIbrahim
10    [email protected]    RemaOday
11    [email protected]    FikriHusein
12    [email protected]    ZakariHusein
13    [email protected]    LaylaIbrahim
14    [email protected]    TamerWesam
15    [email protected]    KhaledHasaan
16    [email protected]    AsaadIbrahim
17    [email protected]    TareqNassar
18    [email protected]    DianaLutfi
19    [email protected]    TamaraMalek
20    [email protected]    ArwaKamal
21    [email protected]    SalmaTamer
22    [email protected]    NisreenTamer
23    [email protected]    SalmaTamer

去掉重复的UserName

delete Student2 where Id in

(
    select id from (
      select Id, UserName,ROW_NUMBER() over (partition by UserName order by id) orderid from Student2
    )t1
    where t1.orderid>1
)

时间: 2024-10-13 16:01:23

sql 表中删除字段重复的行的相关文章

从数据库统计出某张表中某个字段重复次数

最近有一个新需求就是在数据表里面查询出某个字段重复了多少次进而对其进行排名分析,那么问题来了,SQL该怎么写呢 既然要统计次数肯定要用到COUNT,那么最后得到的SQL就是 SELECT TOP 100 field1,field1Count = COUNT(field1) FROM table1 GROUP BY field1 ORDER BY field1Count DESC 这句SQL的意思就是从table1中统计出field1字段冲重复次数并选出排名前100的field1 好记性不如烂笔头

Sql server的Merge语句,源表中如果有重复数据会导致执行报错

用过sql server的Merge语句的开发人员都应该很清楚Merge用来做表数据的插入/更新是非常方便的,但是其中有一个问题值得关注,那就是Merge语句中的源表中不能出现重复的数据,我们举例来说明这个问题. 现在我们有一张表叫T_Class_A,其建表语句如下: CREATE TABLE [dbo].[T_Class_A]( [ID] [int] IDENTITY(1,1) NOT NULL, [ClassName] [nvarchar](50) NULL, [StudentTotalCo

[数据库] 取指定表中某字段的累加和不超过总和80%的行

有表 Table_1, 字段 Value int,  P float .5 要取出以 Value 字段倒序的 P 字段累加和 不超过 整个表中P字段总和的 80%的行.  并在返回列表中 加入字段 SUM ,存放当前行与前面所有行的累加和. 折腾了半天, 写了下面的查询sql: declare @e float select @e = sum(P) from [Table_1] Set @e = @e * 0.8 ;with T as ( select [ID] = row_number() o

SQL语句中----删除表数据drop、truncate和delete的用法

一.SQL中的语法 1.drop table 表名称                         eg: drop table  dbo.Sys_Test 2.truncate table 表名称                     eg: truncate  table dbo.Sys_Test   3.delete from 表名称 where 列名称 = 值      eg: delete from dbo.Sys_Test where test='test' 二.drop,tru

MSSQL如何在没有主键的表中删除重复数据

为了对重复数据进行实验,下面建一个设计不太好(没有主键)表并插入了一些重复数据: create database testdb use testdb ; go create table DupsNoPK (Col1 int Null, Col2 char(5) Null ); go insert DupsNoPK(Col1,Col2) Values(1,'abc'), (2,'abc'), (2,'abc'), (2,'abc'), (7,'xyz'), (7,'xyz'); 为了验证表确实有重

删除oracle表中的完全重复数据

今天数据库除了个问题:项目中的一张表,数据是从另外一个系统中相同的表里弄过来的,但是可能由于昨天同事导数据导致我这张表中的数据出现了完全相同的情况(所有字段),全部是两条,需要删除相同的数据. 做法:1.创建中间表, 2.将原表中的不重复数据放入中间表, 3.删除原表数据 4.将中间表数据放入原表 5.删除中间表 --创建中间表 CREATE TABLE ATT_SCATTER_REQ_NUM_TEMP AS (SELECT distinct * FROM ATT_SCATTER_REQ_NUM

sql语句中---删除表结构drop,truncate和delete的异同点

参考别人总结,此内容仅供自己学习 一.sql中的语法 1.drop table 表名称                                      eg:drop table dbo.Sys_Test 2.truncate table 表名称                                eg:truncate table dbo.Sys_Test 3.delete from 表名称 where  列名称=值       eg:delete from dbo.Sys

逆向删除属性表中的字段

删除属性表中的字段一定要注意循环的方式.如果是for循环,i< FeatureClass.Fields.FieldCount话,每删除一个字段FieldCount属性返回的字段数量将减少一个,也就是你根本不能完全删除想要删除的字段:如果你先把FeatureClass.Fields.FieldCount赋给一个变量count,for循环中使用i<count,最后导致索引越界:所以,建议使用逆向的方法删除字段. IFeatureClass pointFS = GPClass.gpUtilities

查找表中多余的重复记录(多个字段)

3.查找表中多余的重复记录(多个字段) select * from vitae awhere (a.peopleId,a.seq) in  (select peopleId,seq from vitae group by peopleId,seq  having count(*) > 1) 注意这里 in可以有多个字段