mysql优化 - mysql KEY是什么键?有什么作用?
PHPz
PHPz 2017-04-17 14:58:50
0
3
755

1.表

CREATE TABLE jforum_posts (
post_id int(11) NOT NULL AUTO_INCREMENT,
topic_id int(11) NOT NULL DEFAULT '0',
forum_id int(11) NOT NULL DEFAULT '0',
user_id int(11) NOT NULL DEFAULT '0',
post_time datetime DEFAULT NULL,
poster_ip varchar(15) DEFAULT NULL,
enable_bbcode tinyint(1) NOT NULL DEFAULT '1',
enable_html tinyint(1) NOT NULL DEFAULT '1',
enable_smilies tinyint(1) NOT NULL DEFAULT '1',
enable_sig tinyint(1) NOT NULL DEFAULT '1',
post_edit_time datetime DEFAULT NULL,
post_edit_count int(11) NOT NULL DEFAULT '0',
status tinyint(1) DEFAULT '1',
attach tinyint(1) DEFAULT '0',
need_moderate tinyint(1) DEFAULT '0',
PRIMARY KEY (post_id),
KEY user_id (user_id),
KEY topic_id (topic_id),
KEY forum_id (forum_id),
KEY post_time (post_time),
KEY need_moderate (need_moderate)
) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8

2.问题

这里的KEY是什么键?是外键吗?如果不是外键,它有什么用?
KEY user_id (user_id),
KEY topic_id (topic_id),
KEY forum_id (forum_id),

PHPz
PHPz

学习是最好的投资!

全員に返信(3)
阿神

重要なのは、テーブルにインデックスを追加することです。インデックスの機能は、データベースのクエリ速度を向上させることです。 MySQL のデータベース エンジンは InnoDB で、B+ ツリーとハッシュの 2 つのデータ構造を使用してテーブルにインデックスを追加します。
EXPLAIN SELECT * FROM idc_work_order_main WHERE id = '100' 次に、explain を使用して、現在の SQL ステートメントがインデックスを使用しているかどうか、およびインデックスの使用方法を確認します。

いいねを押す +0
小葫芦

キーはテーブル内のフィールドのインデックスを制限するインデックス制約です。
キーの目的は主にクエリを高速化することです:
KEY user_id (user_id) 、
KEY トピック ID (トピック ID)、
KEY フォーラム ID (forum_id),
は、user_id、topic_id、forum_id の 3 つのフィールドのインデックスの作成を指します
mysql のキー、主キー、一意のキー、インデックスの違い

いいねを押す +0
伊谢尔伦

インデックス作成、クエリ速度の向上

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート