使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供有distinct这个关键字来过滤掉多余的重复记录只保留一

条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是distinct只能返回它的目标字段,而无法返回其它字段

下面先来看看例子:

table

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

试了半天,也不行,最后在mysql手册里找到一个用法,

用group_concat(distinct name)配合group by name实现了我所需要的功能 5.0才支持的.

突然灵机一闪,既然可以使用group_concat函数,那其它函数能行吗?

赶紧用count函数一试,成功, 现在将完整语句放出:

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之前,

不然会报错。。。OK了

转自:http://xcy.17cha8.cn/read.php/441.htm

mysql筛选不重复数据库_mysql的distinct用法-mysql中如何筛选出非重复的数据相关推荐

  1. mysql 逻辑备份导入数据库_mysql逻辑备份(mysql dump的使用)

    mysqldump 属于MySQL客户端工具 mysqldump备份工具对于MyISAM存储引擎实现备份是温备份,对innodb存储引擎是可以实现热备份. 使用mysqldump备份数据库可以实现完全 ...

  2. mysql命令导入导出数据库_MYSQL命令行导入导出数据库详解

    Mysql命令行导入数据库: 1,将要导入的.sql文件移至bin文件下,这样的路径比较方便 2,同上面导出的第1步 3,进入MySQL:mysql -u 用户名 -p 如我输入的命令行:mysql ...

  3. mysql 创建和删除库_mysql入门系列:mysql创建、删除和选择数据库

    mysql供给了三条数据库级的句子,它们分别是:createdatabase用于创立数据库,dropdatabase用于删去数据库,use用于挑选缺省数据库. 其中约束条件是该数据库的称号有必要是合法 ...

  4. 整数数组查找java_使用Java编写程序以查找整数数组中的第一个非重复数字?

    查找数组中的第一个非重复数字-构造count数组以将给定数组中每个元素的计数存储为相同长度,且所有元素的初始值为0. 将数组中的每个元素与除自身之外的所有其他元素进行比较. 如果匹配发生,则增加其在计 ...

  5. C++找出数组中的第一个非重复整数的算法(附完整源码)

    C++找出数组中的第一个非重复整数的算法 C++找出数组中的第一个非重复整数的算法完整源码(定义,实现,main函数测试) C++找出数组中的第一个非重复整数的算法完整源码(定义,实现,main函数测 ...

  6. java 字符串编程题_Java编程题——在一个字符串中查找第一个非重复的字符

    编写一个Java程序来查找一个字符串中第一个非重复的字符,这是在编程测试中很常见的一个问题,因为字符串处理在程序员面试中是一个普遍的话题.面试前最好是准备好一些熟知的编程问题,例如使用递归反转字符串, ...

  7. mysql重复记录大于十的数据库_MySQL专题10之MySQL序列使用、MySQL处理重复数据、MySQL以及SQL的注入...

    1.MySQL序列使用 -  MySQL序列是一组整数:1,2,3...,由于一张数据表只能有一个字段自增主键,如果你想实现其他字段也实现自动增加,就可以使用MySQL序列来实现. -  使用AUTO ...

  8. mysql删除完全重复数据库_MySQL中删除完全重复数据的准确SQL语句

    案例: id姓名课程名称分数1张三数学692李四数学893张三数学69删除除了自动编号不同,其他都相同的学生冗余信息 ----------------------------------------- ...

  9. mysql分页查询所有数据库_MySQL 数据库 分页查询/聚合查询

    引言 在本篇博客简单介绍一下分页查询以及聚合查询简单操做.html 分页查询 在MySQL中,分页查询通常都是使用limit子句实现,limit子句声明以下:mysql SELECT * FROM t ...

最新文章

  1. mysql一主两从_MySQL 网络延迟参数设置建议
  2. PopupWindow的使用
  3. 《研磨设计模式》chap16 模板方法模式
  4. 排序算法 - 面试中的排序算法总结
  5. node:jwt、拦截器-学习笔记
  6. c/c++面试试题(一)
  7. mysql 走索引 很慢_MySQL优化:为什么SQL走索引还那么慢?
  8. php kibana查询,搜索您的数据 | Kibana 用户手册 | Elastic
  9. matlab图像大作业,MATLAB图像大作业
  10. Java基础学习总结(134)——JDK 11 是否值得更新的思考
  11. 联想打印机测试软件,办公实用主义 联想LJ3800DW打印机测试
  12. BackgroundWorker DoWork事件调用多次的问题
  13. 苹果手机计算机切换用户名,苹果ID如何切换账号?苹果手机切换ID登录使用教程...
  14. gin html模板调用js函数
  15. ads1115与树莓派
  16. Windows 10开机后,键盘上的Num Lock灯默认是熄灭的
  17. js一键复制并调起微信客户端
  18. Python 2和Python 3 用pip 安装时如何区分
  19. Verilog实现之任意分频电路
  20. 新概念英语第四册41-48课(转)

热门文章

  1. 2011 ACM/ICPC 福州赛区网络赛解题报告
  2. BroadcastReceiver的使用--系统广播(显示手机电量)
  3. 数据如何归一化matlab中,数据归一化汇总
  4. mac电脑安装vuedevtools的步骤
  5. 锐思华创与全球汽车零部件公司安波福将展示AR-HUD智能座舱
  6. 2018年年末的一些思考
  7. jsPlumb应用指南(一)概念部分
  8. 实训10 异常、API、list
  9. web项目-银行管理系统MVC(jdbc+jsp+dao+servlet+service)
  10. 记录一道题目附件是咒语.txt的杂项题writeup