Blog

数据库索引效率分析

当我们在创建好一个数据库表时,虽然已经同时创建好各个表的索引,但却不知道该索引的执行效率如何?是否是索引方案中最有效的一种? MySQL提供了一个内建的SQL命令来帮助我们完成这个任务,这就是EXPLAIN命令。EXPLAIN命令一般语法是:EXPLAIN。例子如下: EXPLAIN SELECT peopleid FROM people WHERE firstname='Mike' AND lastname='Sullivan' AND age='17'; 这个命令将返回分析结果,我们来看看这些数据是什么意思: table:这是表的名字。 type: 连接操作的类型。如果EXPLAIN显示连接类型是“ALL”,而且你并不想从表里面选择出大多数记录,那么MySQL的操作效率将非常低,因为它要扫描整个表。你可以加入更多的索引来解决这个问题。 possible_keys: 可能可以利用的索引的名字。这里的索引名字是创建索引时指定的索引昵称;如果索引没有昵称,则默认显示的是索引中第一个列的名字。默认索引名字的含义往往不是很明显。 Key: 它显示了MySQL实际使用的索引的名字。如果它为空(或NULL),则MySQL不使用索引。 key_len: 索引中被使用部分的长度,以字节计。 ref: 它显示的是列的名字(或单词“const”),MySQL将根据这些列来选择行。 rows: MySQL所认为的它在找到正确的结果之前必须扫描的记录数。显然,这里最理想的数字就是1。 Extra: 这里可能出现许多不同的选项,其中大多数将对查询产生负面影响。

Words translated by CCJK

146,096,379

Request a call or contact us

  •  

    Call ccjk.support for professional assistance

  •  

    Click Here to leave us a message and be as detailed as possible.

We are Certified

Our Client Satisfaction

rating for previous quarte

4.00
  •  
    Inquiry Form

    Please take few minutes to fill
    inquiry form and get Free Quote

  •  
    Request a Call

    Click to receive Free Call, Our
    Representative will contact you

  •  
    Leave a Message

    Please leave us a message and
    be as detailed as possible

Over 95% of our clients recommend our language services to others


Copyright © CCJK Technologies Co., Ltd. 2000-2017. All rights reserved.
TOP