DINSTINCT
DISTINCT是对结果集进行去重,有三点需要注意。
1.在大多数情况下(两者后面所跟的字段相同时),DISTINCT跟group by是等效的,此时DISTINCT可以看作group by的一个特例,DISTINCT会使用到group by。
如:
select a,b
from tableA
group by a,b
关于distinct的优化,可以参考group by的优化。
2.当distinct与limit结合使用时,比如limit count时,MySQL找到不同的count行数据时就会停止。
3.当distinct后的字段已经被MySQL读取完毕时,MySQL就会停止,不会继续读此数据行中关联的另外表中的字段,如:
select a
from A,B
where A.a = B.b;
当MySQL读取到A表中的a字段后,便会读取B中剩余的字段。
从这些规则来看,MySQL是比较聪明的,它会尽可能的提高效率,节省时间。
DINSTINCT的更多相关文章
- postgre dinstinct on()的使用
意思是DISTINCT ON ( expression [, …] )把记录根据[, …]的值进行分组,分组之后仅返回每一组的第一行. 需要注意的是,如果你不指定ORDER BY子句,返回的第一条的不 ...
- Tsql查询执行顺序(二)
来源:http://www.cnblogs.com/gaiyang/archive/2011/04/13/2014356.html T-SQL查询处理这种逻辑处理顺序,是理论上的处理过程,实际情况还会 ...
- 【Django】Django 如何实现 如下 联表 JOIN 查询?
SQL语句: select distinct a.device_hash, sum(b.cmn_merge_count) from (select distinct device_hash from ...
- Sql优化(二) 快速计算Distinct Count
原创文章,始发自本人个人博客站点,转载请务必注明出自http://www.jasongj.com 个人博客上本文链接http://www.jasongj.com/2015/03/15/count_di ...
- select 嵌套查询
1. SELECT语句的子查询 语法: SELECT ... FROM (subquery) AS name ... 先创建一个表: CREATE TABLE t1 (s1 INT, s2 C ...
- 159. Longest Substring with At Most Two Distinct Characters
最后更新 二刷 08-Jan-17 回头看了下一刷的,用的map,应该是int[256]的意思,后面没仔细看cuz whatever I was doing at that time.. wasnt ...
- Tsql查询执行顺序
对于T-SQL编程,用得最广泛的,莫过于查询(Querying).要想写出高质量.高性能的查询语句,必须深入地了解逻辑查询处理. 一.逻辑查询处理的各个阶段 (5)SELECT DISTINCT TO ...
- 【知识整理】这可能是最好的RxJava 2.x 入门教程(三)
这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(一) 这可能是最好的RxJava 2.x 入门教程(二) GitHub 代码同步更新:ht ...
- 【SqlServer系列】集合运算
1 概述 已发布[SqlServer系列]文章如下: [SqlServer系列]SQLSERVER安装教程 [SqlServer系列]数据库三大范式 [SqlServer系列]表单查询 [SqlS ...
随机推荐
- Immutable 常用API简介
本文主要整理了Immutable.js常用API的使用. Immutable 是什么? 关于Immutable的定义,官方文档是这样说的: Immutable data encourages pure ...
- Scrum立会报告+燃尽图(十一月十七日总第二十五次):设计调查问卷;修复上一阶段bug
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2284 项目地址:https://git.coding.net/zhang ...
- POJ 2392 Space Elevator 贪心+dp
题目链接: http://poj.org/problem?id=2392 题意: 给你k类方块,每类方块ci个,每类方块的高度为hi,现在要报所有的方块叠在一起,每类方块的任何一个部分都不能出现在ai ...
- lintcode-501-迷你推特
501-迷你推特 实现一个迷你的推特,支持下列几种方法 postTweet(user_id, tweet_text). 发布一条推特. getTimeline(user_id). 获得给定用户最新发布 ...
- mui.ajax与服务器(SpringMVC)传输json数据
跨域问题 PC端为了安全,所以禁止跨域.而我使用mui做移动web时,难免会使用pc浏览器进行调试.mui.ajax是允许跨域的.为了可以调试成功,需要对浏览器进行设置及.以360急速浏览器为例,设置 ...
- mosquitto启动时Address already in use 和 一般的 Address already in use
对于mosquitto启动时的地址占用错误,可能是mosquitto启动之后没关掉,进程一直占用了端口.查看mosquitto相关的进程,然后关掉就可启动了. 关掉mosquitto进程即可 参考: ...
- BOM对象属性定时器的调用
使count中的内容,自动切换 <body> <h1 id="count"></h1> </body> //获取count var ...
- C语言 aabbcc、abc、fabc、aabc
输入一个字符串,匹配字符串中连续出现的字符串.并且连续个数相等 如输入 aabbcc.abc.fabc.aabc.aabbc 分别输出yes还是no #include<stdio.h>#i ...
- PHP对象的复制
对象的复制(克隆) $obj1 = new A(); $obj1->p1 = 11; $obj2 = $obj1; //值传递 //则,现在有几个对象?——1个对象! 当然: $obj3 ...
- Tomcat安装及配置详解
Tomcat安装及配置详解 一,Tomcat简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,Tomcat是Apache 软件基金会(Apache Software Found ...