一、在mysql表有多条完全重复的记录,也无主键
1、给表增加一个自增长的列作为主键,这样的话,完全重复的数据就有了不一样的地方
altertable表名addcolumnidintPRIMARYKEYAUTO_INCREMENT;`
2、删除重复的列中ID较小的那一个,保留较大的id
deletet1fromtestt1innerjointestt2wheret1.id<t2.idANDt1.sfzh=t2.sfzh
3、删除掉新增的主键ID
ALTERtable`表名`DROPcolumnid;
4、把原来表中的一列设置为主键
ALTERtable`表名`addPRIMARYKEY(user_role_id)
二、MSSQL
--查找sfzh重复的数据SELECT*fromSheet1wheresfzhin(SELECTsfzhfromSheet1GROUPBYsfzhHAVINGcount(*)>1)--删除重复记录,只保留ID号最大的一条deletefromSheet1wheresfzhin(selectsfzhfromSheet1groupbysfzhhavingcount(sfzh)>1)andidnotin(selectmax(id)fromSheet1groupbysfzhhavingcount(sfzh)>1)--查看全部记录SELECT*fromSheet1