8

mySQLに、「id」列が主キーであるテーブルがあります。

CREATE TABLE `USERS` (
  `ID` mediumint(9) NOT NULL auto_increment,
  .....
  PRIMARY KEY  (`ID`),
  KEY `id_index` (`ID`)
) ENGINE=MyISAM AUTO_INCREMENT=267 DEFAULT CHARSET=latin1;

また、次のようにインデックスを追加しました。

CREATE INDEX id_index ON USERS (id);

私はこれをする必要がありましたか?または、主キーは自動的にインデックス付けされますか?

最終的な目的は、テーブルUSERSのid列に結合するクエリを高速化することです。

ありがとう

4

3 に答える 3

15

いいえ、これを行う必要はありません。

主キーは自動的に索引付けされます。必要なのは、他のテーブルの外部キーである列にインデックスを付けることです。

于 2013-02-13T10:36:43.707 に答える
4

PK に追加のインデックスを追加する必要はありません。

主キーの使用

于 2013-02-13T10:28:33.593 に答える
3

デフォルトでは、主キーはINDEXKEYのように機能します。キーにインデックスを付けるためにこれを作成する必要はありません。

于 2013-02-13T13:19:38.347 に答える