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

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의 데이터베이스 엔진은 B 트리와 해시라는 두 가지 데이터 구조를 사용하여 테이블에 인덱스를 추가하는 InnoDB입니다.
EXPLAIN SELECT * FROM idc_work_order_main WHERE id = '100' 그런 다음 explain을 사용하여 현재 SQL 문에서 인덱스를 사용하는지 여부와 인덱스 사용 방법을 확인합니다.

小葫芦

키는 테이블의 필드에 대한 인덱스를 제한하는 인덱스 제약 조건입니다.
키의 목적은 주로 쿼리 속도를 높이는 것입니다.
여기의 명령문은
KEY user_id(user_id)입니다. ,
KEY topic_id(topic_id),
KEY forum_id (forum_id),
는 user_id, topic_id, forum_id 세 필드에 대한 인덱스를 생성하는 것을 의미합니다
mysql의 키, 기본 키, 고유 키 및 인덱스의 차이점

伊谢尔伦

인덱스, 쿼리 속도 향상

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿