SQL语句教程(01) SELECT SQL语句教程(02) DISTINCT SQL语句教程(03) WHERE SQL语句教程(04) AND OR SQL语句教程(05) IN SQL语句教程(06) BETWEEN SQL语句教程(07) LIKE SQL语句教程(08) ORDER BY SQL语句教程(09) 函数 SQL语句教程(10) COUNT SQL语句教程(11) Group By SQL语句教程(12) HAVING SQL语句教程(13) ALIAS SQL语句教程(
最易入门SQL语句教程 SQL语句教程(01) SELECT SQL语句教程(02) DISTINCT SQL语句教程(03) WHERE SQL语句教程(04) AND OR SQL语句教程(05) IN SQL语句教程(06) BETWEEN SQL语句教程(07) LIKE SQL语句教程(08) ORDER BY SQL语句教程(09) 函数 SQL语句教程(10) COUNT SQL语句教程(11) Group By SQL语句教程(1 2) HAVING SQL语句教程(13) A
1、查询“001”课程比“002”课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#='001') a,(select s#,score from SC where C#='002') b where a.score>b.score and a.s#=b.s#; 2、查询平均成绩大于60分的同学的学号和平均成绩; select S#,avg(score) from sc group b y S# having
Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题: 1、查询“001”课程比“002”课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#='001') a,(select s#,score from SC where C#='002') b where a.scor
SQL语句教程(01) SELECT SQL语句教程(02) DISTINCT SQL语句教程(03) WHERE SQL语句教程(04) AND OR SQL语句教程(05) IN SQL语句教程(06) BETWEEN SQL语句教程(07) LIKE SQL语句教程(08) ORDER BY SQL语句教程(09) 函数 SQL语句教程(10) COUNT SQL语句教程(11) Group By SQL语句教程(12) HAVING SQL语句教程(13) ALIAS SQL语句教程(
DISTINCT 实际上和 GROUP BY 操作的实现非常相似,只不过是在 GROUP BY 之后的每组中只取出一条记录而已。所以,DISTINCT 的实现和 GROUP BY 的实现也基本差不多,没有太大的区别。同样可以通过松散索引扫描或者是紧凑索引扫描来实现,当然,在无法仅仅使用索引即能完成 DISTINCT 的时候,MySQL 只能通过临时表来完成。但是,和 GROUP BY 有一点差别的是,DISTINCT 并不需要进行排序。也就是说,在仅仅只是 DISTINCT 操作的 Query
在 MySQL 查询中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。
关键词 DISTINCT 用于返回唯一不同的值,就是去重啦。用法也很简单:
SELECT DISTINCT * FROM tableName
DISTINCT 这个关键字来过滤掉多余的重复记录只保留一条。
另外,如果要对某个字段去重,可以试下:
SELECT *, COUNT(DISTINCT nowamagic) FROM table GROUP BY nowamagic