一、distinct 位置

1. 单独的distinct只能放在开头,否则报错,语法错误

mysql>SELECT nickname,DISTINCT(openid) from ims_ewei_shop_member;

[SQL] SELECT nickname,DISTINCT(openid) from ims_ewei_shop_member;

[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds

to your MySQL server version for the right syntax to use near 'DISTINCT(openid)

from ims_ewei_shop_member' at line 1

2. 现在把distinct放在开头

SELECT DISTINCT(openid),nickname from ims_ewei_shop_member;

# 查询成功

3. 与其他函数使用时候,没有位置限制如下

SELECT nickname,count(DISTINCT(openid)) from ims_ewei_shop_member;

# 这种情况下是正确的,可以使用。

二、distinct用法

1. 在count计算不重复的记录的时候能用到

SELECT COUNT(DISTINCT(openid)) from ims_ewei_shop_member;

# 就是计算ims_ewei_shop_member表中openid不同的记录有多少条

2. 在需要返回记录不同的如openid等具体值的时候可以用

SELECT DISTINCT(openid) from ims_ewei_shop_member;

# 返回ims_ewei_shop_member表中不同的openid的具体的值

3. 上面的情况2对于需要返回mysql表中2列以上的结果时会有歧义

# 无论是

SELECT DISTINCT(openid),nickname from ims_ewei_shop_member;

# 还是

SELECT DISTINCT openid,nickname from ims_ewei_shop_member;

# 特别注意:

# 实际上返回的是openid与nickname 同时不相同的结果,也就是DISTINCT同时作用了两个字段,必须得openid和nickname都相同的才被排除了,与我们期望的结果不一样,我们期望的是openid不同被过滤

# 在这种情况下,distinct同时作用了两个字段,openid,nickname

# 这时候可以考虑使用group_concat() 函数来进行排除,不过这个mysql函数是在mysql4.1以上才支持的

# 同时我们还可以利用下面的方式解决以上遇到的歧义问题通过group by分组

用distinct的时候,如果它有索引,mysql会把它转成group by的方式执行

mysql 数据入库去重_MySQL中去重 distinct 的用法 ,数据库去重distinct相关推荐

  1. mysql between详解_MySQL中BETWEEN子句的用法实例详解

    这篇文章主要介绍了MySQL中BETWEEN子句的用法详解,是MySQL入门学习中的基础知识,需要的朋友可以参考下 可以使用IN子句来代替相结合的"大于等于和小于等于"的条件. 要 ...

  2. mysql多表联合查询 去重_mysql中的多表联合并且去重排序

    同一数据库中au_log_开头的表,表中ipsrc和ipdst.portsrc和portdst字段将这些4元组去重后显示出来,并按照某个字段排序 $result = $db->query(&qu ...

  3. mysql数据表案例_mysql中库和表的简单操作案例

    mysql中库和表的简单操作案例 发布时间:2020-12-05 09:54:06 来源:亿速云 阅读:71 作者:小新 这篇文章主要介绍mysql中库和表的简单操作案例,文中介绍的非常详细,具有一定 ...

  4. mysql数据库命令 单选_mysql中创建数据库命令是?_学小易找答案

    [单选题]NH4NO2分解得氮气和水,在23°C,95549.5 Pa 条件下,用排水集气法收集到57.5 cm3氮气.已知水的饱和蒸气压为2813.1 Pa,则干燥后氮气的体积为() [填空题]在相 ...

  5. 【Logstash】Logstash:把MySQL数据导入到Elasticsearch中

    1.概述 转载:https://www.cnblogs.com/sanduzxcvbnm/p/12076487.html Logstash:把MySQL数据导入到Elasticsearch中 前提条件 ...

  6. mysql获取当月最后一天_mysql中获取本月第一天、本月最后一天、上月第一天、上月最后一天

    mysql获取当月最后一天_mysql中获取本月第一天.本月最后一天.上月第一天.上月最后一天等等 转自: https://blog.csdn.net/min996358312/article/det ...

  7. C语言学习笔记-----scanf【通过键盘将数据输入到变量中】(两种用法)

    C语言学习笔记-----scanf[通过键盘将数据输入到变量中](两种用法) 用法一:scanf("输入控制符",输入参数): 功能: 将从键盘输入的字符转化为输入控制符所规定格式 ...

  8. mysql数据聚合技术_Mysql 去重 聚合

    示例数据表中的数据: mysql> select * from talk_test; +----+-------+--------+ | id | name  | mobile | +----+ ...

  9. mysql 开启引擎命令_MySql中启用InnoDB数据引擎的方法

    1.存储引擎是什么? Mysql中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平并且最终提供广泛的不同的功能和能力.通过选择不同的技术, ...

  10. mysql 数据修改记录日志_mysql对数据的更新操作记录在哪个日志中?

    mysql对数据的更新操作记录在通用查询日志和二进制日志中.通用查询日志用来记录用户的所有操作,包括启动和关闭 MySQL 服务.更新语句和查询语句等:二进制日志会以二进制的形式记录数据库的各种操作, ...

最新文章

  1. 算法设计与分析第1章 算法概述
  2. 离线情报分析工具CaseFile
  3. 如何选择漏电保护器规格型号_家用漏电开关型号介绍 如何选用家用漏电开关...
  4. oracle tax 中国税,oracle_TAX_税基础设置操作手册.doc
  5. 高级数据结构与算法 | 并查集(Union-Find)
  6. LF AI Day中国站火热报名中
  7. C++学习笔记:(二)函数重载 常量与引用
  8. string类有可以调换方向的函数吗_String类中常用的操作
  9. MNIST手写数字识别【Matlab神经网络工具箱】
  10. android小程序_小程序踩坑记
  11. Rust: 外部函数接口(FFI)
  12. 头歌平台(EduCoder)—— 数据挖掘算法原理与实践:数据预处理
  13. css 超链接的颜色,css超链接字体颜色
  14. 网页转圈打不开服务器,打不开网页怎么回事
  15. 425 Failed to establish connection.
  16. 微信公众号答题功能搭建
  17. 保险精算--第13周作业
  18. Tomcat(4)-集群
  19. 编程猫python课程结束后哪里再学更高级别的_@正在选编程猫的家长,先别急,看完这篇测评再报也不迟!...
  20. Sequence Model-week1编程题3-用LSTM网络生成爵士乐

热门文章

  1. 后台管理系统开发缺陷日志
  2. 两台电脑怎么互传文件?用它就能搞定!
  3. 打开FTP server或者wftpd32提示 unknow error 10013
  4. 计算机需要那些高中数学知识点,高中必考数学知识点归纳整理
  5. [Linux]----马哥Linux运维共208讲(初级+中级+高级+必备软件+PPT)01_04_Linux操作系统基础
  6. AI企航58自动发帖软件图片视频教程
  7. SQLHelper--四种方法完整版
  8. 10分钟学会如何通过问卷调查赚钱
  9. CSS: 前端的视差滚动,写出看起来高逼格的网页效果
  10. iTextSharp 添加表格