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

原来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;

posted @ 2011-05-30 21:53  freewater  阅读(278)  评论(0编辑  收藏  举报