消除表中重复记录的一个取巧方法

原来pulisher表name字段有重复

1 CREATE TABLE Publisher(
2 publisherId INTEGER NOT NULL CONSTRAINT pk_Publisher PRIMARY KEY,
3 name NVARCHAR2(200) NOT NULL
4 );

先创建一个结构的表:

1 CREATE TABLE newPublisher(
2 publisherId INTEGER NOT NULL CONSTRAINT pk_newPublisher PRIMARY KEY,
3 name NVARCHAR2(200) NOT NULL
4 );

然后

1 insert into newPublisher(publisherId,name)
2 select min(publisherId),name
3 from publisher
4 group by name;

最后重命名表

1 rename newpublisher to publisher;

原文地址:https://www.cnblogs.com/freewater/p/2063680.html