sql删除几个字段值相同的重复列
2013-12-05 11:31
253 查看
本实例用sqlserver:
1.创建数据表
2.插入测试数据
3.数据截图如下所示:
![](https://img-blog.csdn.net/20131205112805906?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdzRib2Jv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
4.删除id和name重复的数据列(保留autoid主键小的)
5.删除后数据截图:
1.创建数据表
create table course( autoid int primary key, --主键 id int, --编号 name varchar(20), --课程名称 score int, teacher varchar(20) )
2.插入测试数据
insert into course(autoid,id,name,score,teacher) values(1,1,'english',4,'ta'); insert into course(autoid,id,name,score,teacher) values(2,1,'english',5,'tb'); insert into course(autoid,id,name,score,teacher) values(3,2,'math',4,'ta'); insert into course(autoid,id,name,score,teacher) values(4,2,'math',4,'ta'); insert into course(autoid,id,name,score,teacher) values(5,3,'chinese',4,'ta'); insert into course(autoid,id,name,score,teacher) values(6,4,'art',4,'ta');
3.数据截图如下所示:
4.删除id和name重复的数据列(保留autoid主键小的)
delete a from course a inner join (select id,name,min(autoid) as autoid from course group by id,name having count(1)>1) b on a.id=b.id and a.name=b.name and a.autoid>b.autoid
5.删除后数据截图:
相关文章推荐
- Oracle表生成JavaBean
- MongoDB初识
- Mybatis批量插入oracle配置
- 在Oracle 11.2.0.3.0上开启大页(hugepages)的详细解析
- 在Oracle 11.2.0.3.0上开启大页(hugepages)的详细解析
- 高性能MySql进化论(九):查询优化器常用的优化方式
- 数据库主键设计之思考
- 使用Sqoop-1.4.4将Sqlserver2008中数据导入到Hbase上
- oracle修改用户密码
- ios即时通讯客户端开发之-mac上安装MySQL
- [MySQL 写SQL]吃饭中被call起,帮她解决一个SQL的过程,
- ahjesus 捕获entity framework生成的sql语句
- plsql programming 16 动态SQL和动态PLSQL
- pl/sql programming 15 数据提取
- mysql 忘记root用户密码破解
- Exec sql/c
- mysql 关键字 字段 转义
- Oracle 端口
- oracle实现对表dml错误记录日志
- Oracle 之 PLSQL、SQL*PLUS、CMD中 访问数据库时,用户登录的输入