sql 筛选屋无重复数据的一点注意
来源:互联网 发布:搞笑小黄鸡软件下载 编辑:程序博客网 时间:2024/05/16 12:00
较广泛的筛选无重复数据的一种方法大概是如下格式
select * from table where column1 in (select min(column1) from student group by column2);
也就是一重复数据分组, 每组提出一个值(最大,最小或者其他),利用这个值去排除其他数据。思路是不错的,但是要注意的一点问题是这个值可能会受到其他组的影响,举例如下。
首先,完整表如下:
7001 tian747002 zhang747003 yan747004 li747005 lia737006 liy727007 tian757008 tian757009 tian767010 tian737011 li767012 li73
想选出无重复名字的数据。
select * from student where grade in (select min(grade) from student group by sname);查询结果如下:
7001 tian747002 zhang747003 yan747004 li747005 lia737006 liy727010 tian737012 li73
发现名字还是有重复的, 因为虽然min(grade)在每个组只有一个,但是其他组的min(grade)未必与本组的相同,所以还是会有重复,这说明用来区别的列必须要唯一确定这条记录,所以采用主键才能保证唯一性。
select * from student where sno in (select min(sno) from student group by sname);
7001 tian747002 zhang747003 yan747004 li747005 lia737006 liy72
0 0
- sql 筛选屋无重复数据的一点注意
- SQL筛选重复数据
- sql筛选重复数据
- sql Server 筛选重复的数据。
- 关于sqlserver筛选重复数据的sql语句
- SQL 有条件地筛选重复数据
- SQL 筛选掉某字段重复的数据以及计算查询到的数据
- datatable筛选不重复的sourceColumn数据
- SQL筛选重复字段
- Excel筛选重复数据
- shell 脚本实现文件的随机无重复筛选
- SQL SQLite 筛选(查询)出 重复数据
- 关于进行条件筛选的SQL关键字的一点理解
- EXCEL 一组数据筛选出重复的数据/去重
- 数据库记录中重复的某些字段的数据筛选
- PHP实例:从数组里筛选出重复的数据
- mysql查询筛选出多列值同时重复的数据
- 利用批处理获取无重复的数据
- Hello, FreeSWITCH(2)初识 FreeSWITCH
- 答疑:C语言和框架
- 新建中文名安卓项目
- SQLCODE和SQLERRM
- JAVA基础知识
- sql 筛选屋无重复数据的一点注意
- 一些值得思考的经典语录
- 彻底卸载SqlServer2008R2
- 计蒜客014-罗马数字转换成整数
- android sqlite数据库增删改查
- vim使用
- Sybase数据库技术,数据库恢复---分享Sybase数据库知识(博客文章索引)
- Spring LoadTimeWeaver 详解
- DDOS攻击器常见的三种DDoS攻击方式详解