SQL除去值相同的记录,只保留一条
2017-01-17 13:42
141 查看
假如有item表,有四列,id, c1, c2, c3,数据如下:
例如id为1,2,3的三条记录可认为是重复记录,id为4,5的两条记录可认为是重复记录,剩下两条是两条不同的记录,那么我们要去除的就是相同的记录,前三条之保留一条,4,5保留一条,剩下两条不动。
运行结果:
很简单,用GROUP BY三个列即可,而且从输出结果可以看出,输出的是id最小的记录。
id c1 c2 c3 --------------- 1 c11 c21 c31 2 c11 c21 c31 3 c11 c21 c31 4 c21 c21 c31 5 c21 c21 c31 6 c21 c22 c31 7 c11 c21 c32
例如id为1,2,3的三条记录可认为是重复记录,id为4,5的两条记录可认为是重复记录,剩下两条是两条不同的记录,那么我们要去除的就是相同的记录,前三条之保留一条,4,5保留一条,剩下两条不动。
SELECT * FROM `item` GROUP BY c1, c2, c3;
运行结果:
id c1 c2 c3 --------------- 1 c11 c21 c31 7 c11 c21 c32 4 c21 c21 c31 6 c21 c22 c31
很简单,用GROUP BY三个列即可,而且从输出结果可以看出,输出的是id最小的记录。
相关文章推荐
- SQL中的三值逻辑
- SQL Server 作业批量停止
- 结束SQL阻塞的进程
- 动态生成SQL Server视图作业
- SQL Server 语句操纵数据库
- SQL(结构化查询语句)
- oracle sql日期比较
- linux快速部署mysql服务器
- 10 件在 PHP 7 中不要做的事情
- 使用SQL Server连接服务器访问DB2 Server
- sql 存储过程分页
- 在WINXP系统上安装SQL Server企业版的方法
- 通过批处理调用SQL的方法(osql)
- SQL Server 存储过程的分页
- ASP程序与SQL存储过程结合使用详解
- SQL SERVER编写存储过程小工具
- 防御SQL注入攻击时需要注意的一个问题
- SQL Server 中 RAISERROR 的用法详细介绍