??概念: 优化策略:字段选择性 选择性较低索引 可能带来的性能问题索引选择性=索引列唯一值/表记录数;选择性越高索引检索价值越高,消耗系统资源越少;选择性越低索引检索价值越低,消耗系统资源越多;查询条件含有多个字段时,不要在选择性很低字段上创建索引可通过创建组合索引来增强低字段选择性和避免选择性很低字段创建索引带来副作用;尽量减少possible_keys,正确索引会提高sql查询速度,过多索引...
                            
                            
                                分类:
数据库   时间:
2016-03-18 12:06:48   
                                阅读次数:
327
                             
                    
                        
                            
                            
                                    在教务系统补考子系统的开发过程中,安排考场的算法运算时间非常慢,需要32秒才能完成考场的分配。查找原因,由于需要在学生补考科目表里面进行查找数据——该表的数据目前已达200万条,所以算法的大部分时间都花在查找数据方面。为了解决以上问题,我们决定对数据表进行分析,创建合适的索引。 在创建索引过程中,我
                            
                            
                                分类:
其他好文   时间:
2016-03-17 19:24:56   
                                阅读次数:
153
                             
                    
                        
                            
                            
                                1.InnoDB引擎的auto_increment字段必须是索引。如果是组合索引,必须为组合索引的第一列。createtableautoincrement_demo_inno(
id1intnotnullauto_increment,
id2intnotnull,
namevarchar(10),
index(id1,id2)
)engine=InnoDB此处必须是index(id1,id2),如果id1不放在第一位则..
                            
                            
                                分类:
数据库   时间:
2016-03-08 21:49:30   
                                阅读次数:
188
                             
                    
                        
                            
                            
                                对于任何DBMS,索引都是进行优化的最主要的因素。对于少量的数据,没有合适的索引影响不是很大,但是,当随着数据量的增加,性能会急剧下降。如果对多列进行索引(组合索引),列的顺序非常重要,MySQL仅能对索引最左边的前缀进行有效的查找。 例如:假 设存在组合索引it1c1c2(c1,c2),查询语句s
                            
                            
                                分类:
数据库   时间:
2016-03-05 14:45:56   
                                阅读次数:
199
                             
                    
                        
                            
                            
                                对于大数据量的表格,尤其是百万行以上的数据表,一定要对其建立索引,否则查询速度极慢。(参考后面的测试结果)建立索引时需注意:MySQL的索引有两种:单列索引(即在某一列上建索引)、多列组合索引(即在多个列上建立同一个索引),不像SQL Server分聚集索引,非聚集索引。如何建立单列索引:格式:CR...
                            
                            
                                分类:
数据库   时间:
2016-01-26 20:28:05   
                                阅读次数:
365
                             
                    
                        
                            
                            
                                ①使用组合索引(userName, userAge)②使用组合索引(userAge,userName)1.select * from t_user where userName in ('dd','gg') 在①下会使用索引 在②下不会使用索引 ;2.select * from t_user wh....
                            
                            
                                分类:
数据库   时间:
2016-01-19 14:28:41   
                                阅读次数:
178
                             
                    
                        
                            
                            
                                1.数据表唯一索引 (两列字段,组合索引)遇到的情形:项目搭建新测试环境(其实就是所谓的灰度 与线上一致的一个环境);从线上拉回来代码搭建的,数据也是来自于线上数据,但是由于线上数据有部分为机密数据,然后DBA就按照策划、测试要求,清空了部分数据表。 由于上述操作人不清楚整个业务逻辑,只知道数据不....
                            
                            
                                分类:
Web程序   时间:
2016-01-04 13:04:23   
                                阅读次数:
152
                             
                    
                        
                            
                            
                                一.相关的概念 Rowid的概念 Recursive Sql概念 Predicate(谓词) DRiving Table(驱动表) Probed Table(被探查表) 组合索引(concatenated index) 可选择性(selectivity)二.oracle访问数据的存取方法 1) 全表...
                            
                            
                                分类:
数据库   时间:
2015-12-27 17:48:33   
                                阅读次数:
332
                             
                    
                        
                            
                            
                                MySQL单列索引是我们使用MySQL数据库中经常会见到的,MySQL单列索引和组合索引的区别可能有很多人还不是十分的了解,下面就为您分析两者的主要区别,供您参考学习。 为了形象地对比两者,再建一个表:CREATE TABLE myIndex ( i_testID INT NOT NULL AUT....
                            
                            
                                分类:
数据库   时间:
2015-11-29 16:24:56   
                                阅读次数:
207
                             
                    
                        
                            
                            
                                1、索引应该建在选择性高的字段上(键值唯一的记录数/总记录条数),选择性越高索引的效果越好、价值越大,唯一索引的选择性最高; 2、组合索引中字段的顺序,选择性越高的字段排在最前面;如果把低选择性的列放在...
                            
                            
                                分类:
数据库   时间:
2015-09-09 14:59:23   
                                阅读次数:
185