>  기사  >  데이터 베이스  >  MySQL의 일반적인 인덱스 유형은 무엇입니까

MySQL의 일반적인 인덱스 유형은 무엇입니까

王林
王林원래의
2020-06-28 10:07:483947검색

mysql의 일반적인 인덱스 유형은 다음과 같습니다. 1. FULLTEXT; 3. BTREE; FULLTEXT는 현재 MyISAM 엔진에서만 지원되는 전체 텍스트 인덱스입니다. HASH 인덱스는 한 번만 찾을 수 있으므로 매우 효율적입니다.

MySQL의 일반적인 인덱스 유형은 무엇입니까

Mysql에는 현재 다음과 같은 주요 인덱스 유형이 있습니다:

(권장 튜토리얼: mysql 튜토리얼)

FULLTEXT, HASH, BTREE, RTREE.

자세한 소개:

1. FULLTEXT

는 현재 MyISAM 엔진에서만 지원되는 전체 텍스트 인덱스입니다. CREATE TABLE, ALTER TABLE, CREATE INDEX에서 사용할 수 있지만 현재는 CHAR, VARCHAR, TEXT 열에 대해 전체 텍스트 인덱스만 생성할 수 있습니다.

전체 텍스트 인덱스는 MyISAM과 함께 탄생하지 않았습니다. 이는 WHERE 이름 LIKE "%word%"와 같은 퍼지 텍스트 기반 쿼리의 효율성이 낮은 문제를 해결하기 위해 나타났습니다.

2. HASH

HASH는 고유성(거의 100% 고유성)을 가지며 키-값 쌍 형태를 가지므로 인덱스로 매우 적합합니다.

HASH 인덱스는 한 번만 찾을 수 있고 트리 인덱스처럼 레이어별로 검색할 필요가 없어 매우 효율적입니다. 그러나 이 효율성은 조건부입니다. 즉, "=" 및 "in" 조건에서만 효율적이며 범위 쿼리, 정렬 및 결합 인덱스에는 여전히 효율적이지 않습니다.

3. BTREE

BTREE 인덱스는 특정 알고리즘에 따라 인덱스 값을 트리 형태의 데이터 구조(바이너리 트리)에 저장하는 방식입니다. 순서를 정하고 잎을 얻습니다. 이는 MySQL에서 기본이자 가장 일반적으로 사용되는 인덱스 유형입니다.

4. RTREE

RTREE는 MySQL에서 거의 사용되지 않으며 이 유형을 지원하는 유일한 스토리지 엔진은 MyISAM, BDb, InnoDb, NDb 및 Archive입니다.

BTREE에 비해 RTREE의 장점은 범위 검색에 있습니다.

위 내용은 MySQL의 일반적인 인덱스 유형은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.