distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用 它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的。

下面先来看看例子:

table表

字段1     字段2    id        name    1           a    2           b    3           c    4           c    5           b

库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。

比如我想用一条语句查询得到name不重复的所有数据,那就必须使用distinct去掉多余的重复记录。

select distinct name from table 得到的结果是:

----------

name    a    b    c

好像达到效果了,可是,我想要得到的是id值呢?改一下查询语句吧:

select distinct name, id from table

结果会是:

----------

id name    1 a    2 b    3 c    4 c    5 b

distinct怎么没起作用?作用是起了的,不过他同时作用了两个字段,也就是必须得id与name都相同的才会被排除。。。。。。。

我们再改改查询语句:

select id, distinct name from table

很遗憾,除了错误信息你什么也得不到,distinct必须放在开头。难到不能把distinct放到where条件里?能,照样报错。

------------------------------------------------------------------------------------------------------------

下面方法可行:

select *, count(distinct name) from table group by name

结果:

id name count(distinct name)    1 a 1    2 b 1    3 c 1

最后一项是多余的,不用管就行了,目的达到。。。。。

group by 必须放在 order by 和 limit之前,不然会报错

转载于:https://www.cnblogs.com/xiamiao/p/3187391.html

distinct的用法相关推荐

  1. php distinct 用法,distinct的用法

    1.  Distinct 位置 单独的distinct只能放在开头,否则报错,语法错误 例:SELECT Sid,DISTINCT(Sscore) score from t_student; [SQL ...

  2. mysql中的distinct的用法

    distinct的作用 在mysql中,distinct关键字的主要作用就是对数据库表中一个或者多个字段重复的数据进行过滤,只返回其中的一条数据给用户,distinct只可以在select中使用 di ...

  3. distinct去重用法

    distinct去重用法 distinct distinct 语法 : select distinct 字段1 , 字段2- from 表名 distinct 作用 : 去重 , 当字段名有多个时需完 ...

  4. sql去重复操作详解SQL中distinct的用法

    在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值.关键词 distinct用于返回唯一不同的值. 表A: 表B: 1.作用于单列 select dist ...

  5. distenct oracle_oracle中distinct的用法详解

    下面先来看看例子: table表 字段1 字段2 id name 1 a 2 b 3 c 4 c 5 b 库结构大概这样,这只是一个简单的例子,实际情况会复杂得多. 比如我想用一条语句查询得到name ...

  6. distinct去重用法(简单明了)

    网上看到很多关于distinct的介绍,都比较详细,其实大部分我们只需要知道几个关键点就行了 1.distinct 适用于查询不重复记录的条数 相信大部分搜索的都是,想distinct某个字段,但是又 ...

  7. mysql distinct 的用法

    在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所 ...

  8. 数据库中distinct的用法,distinct和聚合函数一起使用,distinct的位置

    distinct的详细用法 distinct的基本用法 distinct和聚合函数 distinct的位置 distinct的基本用法 一,house表,表结构如图 字段id,house_name,f ...

  9. oracle distinct的用法,oracle中distinct的用法详解

    下面先来看看例子: table表 字段1     字段2    id        name    1           a    2           b    3           c    ...

  10. SQL中distinct的用法

    在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值.关键词 distinct用于返回唯一不同的值.表A:示例1select distinct name f ...

最新文章

  1. 看看那些在公众号留言中的照片
  2. 通信保障:世博会看不到的展品
  3. Linux 常用命令笔记
  4. iphone内存检测
  5. 基于python、虹软实现人脸检测,人脸识别
  6. WPF 模仿QQ音乐首页歌单效果
  7. postgre 生成数据库html文档_postgresql数据库导入和导出CSV格式
  8. 西华大学计算机专业怎么样呢,西华大学(专业学位)计算机技术考研难吗
  9. P2158 [SDOI2008]仪仗队 欧拉函数
  10. 俄罗斯方块c语言代码及注释,C语言代码实现俄罗斯方块
  11. pycharm的python解释器选择_pycharm中配置python解释器
  12. Ubuntu常用软件安装
  13. Express Session的使用
  14. 数据集特征提取_特征提取和选择
  15. MySQL数据库——如何查看MySQL系统帮助?
  16. 如何快速统计Excel中Sheet数
  17. JS异步加载库LABjs简易说明
  18. 一篇文章构建你的 NodeJS 知识体系
  19. (转载)Everynes NES Hardware Specifications
  20. 基于动态时间规整(DTW)的孤立字语音识别

热门文章

  1. window 服务(一)
  2. CSS3无前缀脚本prefixfree.js及Animatable介绍
  3. RDC Lent ifm IP Analysis Exercise
  4. software on macbook pro
  5. partial in latex
  6. 说实话,电脑存储空间大了之后对于你的能力有很大的要求
  7. swift operation
  8. C++类模板特化全总结
  9. UNITY polygon collider不随物体旋转
  10. vfatfs.sys加载