如何正确使用MySQL索引?

时间:2015-04-28 12:38:45

标签: mysql

我正在使用php和MySQL以及一个相当大的MySQL数据库,我试图第一次使用idexes。我得到了服务器首先查看索引的概念,但是我在使服务器使用索引时遇到了麻烦。所以我的问题是:

表中是否有主键(因此主索引?)在我试图从另一列使用的索引上使用?我是否必须在选择查询中明确指定索引? (我正在使用几个表连接,顺便说一句)

有没有人知道使用MySQL索引的初学者指南?我还没有找到一个好的!

1 个答案:

答案 0 :(得分:0)

mysql索引的一个重要规则,比如你有以下索引:

@media screen and (max-width:1100px) {
   .top div[class*='grid_'] {
      min-height: 320px;
   }
}

然后在你的代码中你有一个where子句或者join,例如:

KEY(A,B,C)

Mysql将无法使用查询的索引,因为索引按给定的顺序工作,并且未包含A列。 修复是在查询中使用A或重新排序索引(或添加第二个索引),如下所示:

WHERE B = 'mydata' AND C = 'moredata'

或(如果您在WHERE / JOIN中根本不需要A):

KEY(C,B,A)

同时查看explain,它可以帮助您找到未使用索引的原因。