我的group by 为什么不使用索引?

Oracle > 基础和管理 [问题点数:50分,结帖人cwwhy]
等级
本版专家分:5
结帖率 92%
等级
本版专家分:1681
等级
本版专家分:5
等级
本版专家分:13552
勋章
Blank
红花 2005年7月 Oracle大版内专家分月排行榜第一
Blank
黄花 2005年8月 Oracle大版内专家分月排行榜第二
等级
本版专家分:319
等级
本版专家分:5
等级
本版专家分:28605
勋章
Blank
蓝花 2005年8月 Oracle大版内专家分月排行榜第三
2005年7月 Oracle大版内专家分月排行榜第三
等级
本版专家分:119965
勋章
Blank
红花 2005年8月 Oracle大版内专家分月排行榜第一
2005年6月 Oracle大版内专家分月排行榜第一
2005年3月 Oracle大版内专家分月排行榜第一
2004年11月 Oracle大版内专家分月排行榜第一
2004年10月 Oracle大版内专家分月排行榜第一
2004年9月 Oracle大版内专家分月排行榜第一
2002年10月 Oracle大版内专家分月排行榜第一
2002年9月 Oracle大版内专家分月排行榜第一
2002年8月 Oracle大版内专家分月排行榜第一
Blank
黄花 2008年3月 Oracle大版内专家分月排行榜第二
2005年7月 Oracle大版内专家分月排行榜第二
2004年8月 Oracle大版内专家分月排行榜第二
2003年3月 Oracle大版内专家分月排行榜第二
2002年11月 Oracle大版内专家分月排行榜第二
2002年7月 Oracle大版内专家分月排行榜第二
Blank
蓝花 2002年6月 其他数据库开发大版内专家分月排行榜第三
2002年5月 其他数据库开发大版内专家分月排行榜第三
2004年7月 Oracle大版内专家分月排行榜第三
2003年7月 Oracle大版内专家分月排行榜第三
2003年1月 Oracle大版内专家分月排行榜第三
等级
本版专家分:28605
勋章
Blank
蓝花 2005年8月 Oracle大版内专家分月排行榜第三
2005年7月 Oracle大版内专家分月排行榜第三
等级
本版专家分:28605
勋章
Blank
蓝花 2005年8月 Oracle大版内专家分月排行榜第三
2005年7月 Oracle大版内专家分月排行榜第三
等级
本版专家分:28605
勋章
Blank
蓝花 2005年8月 Oracle大版内专家分月排行榜第三
2005年7月 Oracle大版内专家分月排行榜第三
cwwhy

等级:

MySQL 中 GROUP BY 基本实现原理

MySQL 在进行 GROUP BY 操作的时候要想利用所有,必须满足 GROUP BY 的字段必须同时存放于同一个索引中,且该索引...而且,并只是如此,是否能够利用索引来实现 GROUP BY 还与使用的聚合函数也有关系。 前面两

MySQL分组查询Group By实现原理详解

由于GROUP BY 实际上也同样会进行排序操作,而且与...所以,在GROUP BY 的实现过程中,与 ORDER BY 一样也可以利用到索引。  在MySQL 中,GROUP BY 的实现同样有多种(三种)方式,其中有两种方式会利用现有的索

MySQL优化GROUP BY-松散索引扫描与紧凑索引扫描

满足GROUP BY子句的最一般的方法是扫描整个表并创建一个新... 为GROUP BY使用索引的最重要的前提条件是所有GROUP BY列引用同一索引的属性,并且索引按顺序保存其关键字。是否用索引访问来代替临时表的使用还取决于在查

SQL group by底层原理——本质是排序,可以利用索引事先排好序

由于GROUP BY 实际上也同样会进行排序操作,而且与ORDER BY 相比,GROUP BY 主要只是多了排序之后的分组操作。当然,如果在分组的时候还使用了其他的一些聚合函数,那么还需要一些聚合函数的计算。所以,在GROUP BY ...

SQL优化大全

性能理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。 为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行...

group by是否应该使用索引

GROUP BY query”,追究下来才知道做group by有时不要索引更好。MySQL为此在5.0.40和5.1.17中追加了新的语法。5.0.40 ignore key for join (idxname)5.1.17 ignore key for join |order by | group by(...

MYSQL group by和 聚合函数sum count的优化 多列索引快了100倍

只给 qymc pjny 分别建了索引 索引在同时使用 group by和 sum的时候没有起到作用然后发现索引居然可以同时给2个列同时设置索引 (明白意思 额看图↓)快了100倍的速度原因还明白往大佬指教 只在此分享结果给开发...

oracle group by 优化

oracle group by 如果没有索引,他会进行全表扫描,导致性能低下。提高性能注意两点: 1.通过筛选过后,再进行分组,也就是说尽量少用having,可以让他扫描较少数据。 2.建立索引 oracle group by 如果只有一个...

mysql中,where,order by ,group by对联合索引使用情况

很多面试题都有问到联合索引这个东西,但之前确实是知道怎么用联合索引的,于是查阅了网上很多关于联合索引的解读和分析,主要研究的是,where、group by、order by对联合索引使用情况是怎么样的。...

mysql groupBy 索引问题

今天执行下面的语句,发现没有走索引: SELECT * FROM `a` LEFT JOIN `b` ON `a`.`log_id` = `b`.`id` LEFT JOIN `c` ON `a`.`another_...GROUP BY `a`.`brand_id`, `a`.`title` ORDER BY `a`.`id` DESC LIM...

数据库优化<七>SQL优化之SELECT优化 ——group by 优化

在数据库查询中,group by语句经常使用,而这个语句的使用是最耗性能的,按常理, 我们生活中要这样做也很麻烦,有两种情形:  1、有索引的情况  2、无索引的情况 对于第一种情况,如果在生活中要做这样的事情,很...

[mysql]SQL语句性能优化--Group by中执行慢性能差的原因调查与处理

mysql在数据量较大的时候、使用group by查询结果集时速度很慢的原因可能有以下几种:1) 分组字段在同一张表中2) 分组字段没有建索引3)分组字段加DESC后索引没有起作用(如何让索引起作用才是关键、且听下文...

DataFrame.groupby()简析

 返回值:返回重构格式的DataFrame,特别注意,groupby里面的字段内的数据重构后都会变成索引  groupby(),一般和sun()一起使用,如下例: from pandas import Series,DataFrame  a=[['Li','男','PE',98.],['Li'...

GROUP BY 和 ORDER BY一起使用,需要注意什么

详见链接: https://blog.csdn.net/haiross/article/details/38897835

mysql中高效查询(left join 和 group by),前提是加了索引

mysql中高效查询(left join 和 group by

mysql联合查询强制走索引(force index,GROUP BY)

mysql联合查询强制走索引(force index,GROUP BY) 有一些SQL语句需要实时地查询数据,或者并经常使用(可能一天就执行一两次),这样就需要把缓冲关了,不管这条SQL语句是否被执行过,服务器都不会在缓冲区中查找,...

Dataframeg groupby分组统计结果转换成Dataframe,再修改其索引

groupby分组函数:返回一个重构的dataframe,数据的原索引会保留,但数据的相对位置会发生变化。 下面以一组数据例: import pandas as pd import numpy as np # 创建dataframe data = pd.DataFrame({"key&...

pandas用groupby后对层级索引levels的处理

层及索引levels,刚开始学习pandas的时候没有太多的操作关于groupby,仅仅是简单的count、sum、size等等,没有更深入的利用groupby后的数据进行处理。近来数据处理的时候有遇到这类问题花了一点时间,所以这里记录...

mysql联合索引使用规则

假设某个表有一个联合索引(c1,c2,c3,c4)以下选项哪些字段使用了该索引: A where c1=x and c2=x and c4>x and c3=x B where c1=x and c2=x and c4=x order by c3 C where c1=x and c4= x group by c3,c2 D ...

MySQL查询优化:GROUP BY

为什么松散索引扫描的效率会很高? 紧凑索引扫描(Tight Index Scan) group by 优化方法 — 直接排序 二、group by 与 distinct 三、排序一致问题 一、group by 当我们执行 group by 操作在没有合适的索引可...

mysql的order bygroup by和distinct优化

order bygroup by和distinct三类操作是在mysql中经常使用的,而且都涉及到排序,所以就把这三种操作放在一起介绍。 order by的实现与优化 order by的实现有两种方式,主要就是按用没用到索引来区分: 1. 根据...

MySQL高级 之 order bygroup by 优化

结论:order by子句,尽量使用Index方式排序,在索引列上遵循索引的最佳左前缀原则。 复合(联合)索引形如 key (‘A1’,’A2’,’A3’ ),排序的思路一般是,先按照A1来排序,A1相同,然后按照A2排序,以此类推,...

千万级数据库使用索引查询速度更慢的疑惑-数据回表问题

环境 数据库:TiDB数据库(和mysql数据库极其相似的数据库) ... 表索引:包含一个普通索引索引列 ”year“ 测试sql: SQL1 : select brand from index_basedata where year = ...

pandas按某一层索引分组取某一列的最大值,groupby(),idxmax()

本文是根据stackoverflow上一个问题进行的复盘,若涉及任何侵权,请联系修改或删除。 stackoverflow原文链接 --&gt; ...

DataFrame执行groupby聚合操作后,如何继续保持DataFrame对象而变成Series对象

在处理特征时,碰到一个恶心的问题:用groupby聚合后,之前的dataframe对象变成了series对象,聚合的字段变成了索引index,导致获取这些字段时很麻烦,后面发现reset_index()这个函数,兼职完美的解决了的需求。...

关于Elasticsearch里面聚合group的坑

我们都知道Elasticsearch是一个分布式的搜索引擎,每个索引都可以有多个分片,用来将一份大索引的数据切分成多个小的物理索引,解决单个索引数据量过大导致的性能问题,另外每个shard还可以配置多个副本,来保证高...

Oracle查看分区、索引、表占用空间大小

select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments group by segment_name; 1、表占用空间:select segment_name, sum(bytes)/1024/1024 Mbytese from user_segments where segm

索引

MySQL索引笔记

nosql mongodb group分组统计及索引优化

最近在做mongodb的分析统计,发现group分组有多种做法,和sql还真是太样,需要写点js代码,直接贴示例代码:这是的collection,名字:t_user_score public class UserScore implements Serializable { … ...

mysql groupby 优化

执行GROUP BY子句的最一般的方法:先扫描整个表,然后创建一个新的临时表,表中每个组的所有行应连续的,最后使用该临时表来找到组 并应用聚集函数(如果有聚集函数)。在某些情况中,MySQL通过访问索引就可以...

相关热词 c#创建非模态窗体 c#提取字符串中的数字 c# 扩展无返回类 c#网站如何做预览功能 c# 异步 返回值 c#chart实时曲线图 c# 窗体 隐藏 c#实现终端上下滑动 c# 传递数组 可变参数 c# list 补集