删除重复记录的sql处理方式之一

很多面试中有删除重复记录的题目
如果没有准备,一时还真想不好
这里写一个列子删除重复记录
首先创建一个测试表
create table student(
sno varchar2(32),
sname varchar2(32),
sage number(3)
);
插入测试记录
insert into student values('001','tom',12);
insert into student values('002','mary',35);
insert into student values('007','lily',18);
insert into student values('001','tom',12);
insert into student values('002','mary',35);
insert into student values('001','tom',49);
可以查看现有的表记录
select * from student;
select * from student t group by t.sno,t.sname,t.sage;
创建一个临时表,这个表是按找标记录所有字段分组的记录集
create table tempstudent as select * from student t group by t.sno,t.sname,t.sage;
删除全记录表
drop table student;
更改临时表的名字为原来的表名
alter table tempstudent rename to student;

你可能感兴趣的:(sql,面试)