> 데이터 베이스 > MySQL 튜토리얼 > mysql에는 공동 인덱스가 있습니까?

mysql에는 공동 인덱스가 있습니까?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2022-06-16 10:52:21
원래의
2535명이 탐색했습니다.

mysql에는 조인트 인덱스가 있습니다. 조인트 인덱스는 테이블에 있는 두 개 이상의 열 필드를 인덱싱하는 것을 의미하며, 조인트 인덱스 뒤에 있는 열만 검색하는 경우 인덱스는 아무런 효과가 없습니다. 인덱스 생성 구문은 "테이블명(필드명 1, 필드명 2,...)에 인덱스 인덱스 이름 생성"입니다.

mysql에는 공동 인덱스가 있습니까?

이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.

mysql에는 공동 인덱스가 있나요?

Mysql에는 공동 인덱스가 있습니다

공동 인덱스: 복합 인덱스라고도 하며 테이블에서 두 개 이상의 열 필드를 인덱싱하는 것을 나타냅니다.

Mysql은 인덱스의 필드를 왼쪽에서 오른쪽으로 사용합니다. 쿼리는 인덱스의 일부만 사용할 수 있지만 가장 왼쪽 부분만 사용할 수 있습니다. 예를 들어, 인덱스는 a | a, b | a, b, c의 세 가지 조합으로 검색할 수 있는 키 인덱스(a,b,c)이지만 b와 c의 조합 검색은 지원하지 않습니다. 공동 인덱스 뒤의 검색 어떤 열에 대해서도 검색을 수행하면 인덱스가 적용되지 않습니다

-- 用户表
CREATE TABLE `user` (
  `id` int(4) NOT NULL COMMENT '主键ID',
  `name` varchar(4) NOT NULL COMMENT '姓名',
  `age` int(3) NOT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
)
로그인 후 복사

1. 인덱스 생성

위 그림과 같이 원하는 경우 사용자 테이블을 생성했습니다. 테이블의 name 및 age 열을 검색하려면 다음 SQL을 사용하여 조인트 인덱스를 생성할 수 있습니다.

create index index_name_age on user (name,age);
로그인 후 복사

조인트 인덱스 생성 구문: 테이블 이름(필드 이름 1, 필드 이름)에 인덱스 인덱스 이름을 생성합니다. 2,...)

2. 인덱스 삭제

생성된 조인트 인덱스가 적합하지 않다고 판단되면 다음 SQL을 사용하여 조인트 인덱스를 삭제할 수 있습니다.

drop index index_name_age on user;
로그인 후 복사

또는 alter table table을 사용하세요. name drop index index name

alter table user drop index index_name_age;
로그인 후 복사

3. 같은 이름의 인덱스가 존재하면 오류가 발생합니다.

이미 존재한다고 가정합니다. 인덱스를 다시 생성하면 다음과 같이 결합 인덱스(index_name_age)가 생성됩니다. 오류가 보고됩니다:

Query : create index index_name_age on user (name,age)
Error Code : 1061
Duplicate key name 'index_name_age'
로그인 후 복사

4. 인덱스 보기

인덱스 구문 보기: 테이블 이름의 인덱스 표시

SHOW INDEX FROM USER;
로그인 후 복사

권장 학습:

mysql 비디오 튜토리얼

위 내용은 mysql에는 공동 인덱스가 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿