mysql 인덱스 키워드의 사용법은 무엇입니까

青灯夜游
풀어 주다: 2022-03-01 15:40:58
원래의
4770명이 탐색했습니다.

mysql에서는 인덱스 키워드를 사용하여 인덱스를 생성할 수 있으며 "CREATE INDEX 인덱스 이름 ON 테이블 이름(열 이름)" 구문을 사용하여 인덱스를 볼 수 있으며 "SHOW INDEX FROM 테이블 이름" 구문을 사용할 수 있습니다. ; 인덱스를 수정하는 데에도 사용할 수 있습니다. "DROP INDEX 인덱스 이름 ON 테이블 이름" 구문입니다.

mysql 인덱스 키워드의 사용법은 무엇입니까

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

mysql에서 인덱스는 데이터 테이블의 하나 이상의 열로 구성된 특수 데이터베이스 구조인 인덱스를 의미하며, 데이터 테이블의 특정 값을 가진 레코드를 빠르게 쿼리하는 데 사용할 수 있습니다.

index 키워드를 사용하여 인덱스를 생성하거나, 인덱스를 보거나, 인덱스를 수정할 수 있습니다.

index 키워드는 인덱스를 생성합니다

특히 인덱스 생성을 위해 CREATE INDEX 문을 사용하여 기존 테이블에 인덱스를 생성할 수 있지만 이 문은 기본 키를 생성할 수 없습니다.

CREATE INDEX 索引名 ON 表名 (列名 [长度] [ASC|DESC])
로그인 후 복사
  • : 인덱스 이름을 지정합니다. 하나의 테이블에 여러 인덱스를 생성할 수 있지만 각 인덱스는 테이블에서 고유한 이름을 갖습니다.

  • <테이블 이름>: 인덱스를 생성할 테이블 이름을 지정합니다.

  • <열 이름>: 인덱스를 생성할 열 이름을 지정합니다. 일반적으로 쿼리 문의 JOIN 절과 WHERE 절에 자주 나타나는 열을 인덱스 열로 사용하는 것을 고려할 수 있습니다.

  • <길이>: 선택사항. 열 앞의 길이 문자를 사용하여 인덱스를 생성하도록 지정합니다. 열의 일부를 사용하여 인덱스를 생성하면 인덱스 파일의 크기를 줄이고 인덱스 열이 차지하는 공간을 절약하는 데 도움이 됩니다. 어떤 경우에는 열의 접두사만 인덱싱할 수 있습니다. 인덱스 열의 길이는 최대 255바이트(MyISAM 및 InnoDB 테이블의 경우 1000바이트)로 제한됩니다. 인덱스 열의 길이가 이 제한을 초과하는 경우 해당 열의 접두사를 통해서만 인덱싱할 수 있습니다. 또한 BLOB 또는 TEXT 유형의 열도 접두사 인덱스를 사용해야 합니다.

  • ASC|DESC: 선택사항. ASC는 인덱스가 오름차순으로 정렬되도록 지정하고, DESC는 인덱스가 내림차순으로 정렬되도록 지정하며 기본값은 ASC입니다.

예를 들어 c4 열에 새 인덱스를 추가하려면 다음 문을 사용하세요.

CREATE INDEX idx_c4 ON t(c4);
로그인 후 복사

기본적으로 인덱스 유형이 지정되지 않으면 MySQL은 B-Tree 인덱스를 생성합니다.

인덱스를 보기 위한 index 키워드

SHOW INDEX FROM 表名 [FROM 数据库名]
로그인 후 복사

구문은 다음과 같습니다.

  • <테이블 이름>: 보려는 데이터 테이블의 이름을 지정합니다.

  • <데이터베이스 이름>: 조회하려는 데이터 테이블이 위치한 데이터베이스를 지정하며, 생략 가능합니다. 예를 들어, SHOW INDEX FROM Student FROM test; 문은 테스트 데이터베이스에 있는 학생 데이터 테이블의 인덱스를 보는 것을 의미합니다.

example : :

mysql> SHOW INDEX FROM tb_stu_info2\G
*************************** 1. row ***************************
        Table: tb_stu_info2
   Non_unique: 0
     Key_name: height
 Seq_in_index: 1
  Column_name: height
    Collation: A
  Cardinality: 0
     Sub_part: NULL
       Packed: NULL
         Null: YES
   Index_type: BTREE
      Comment:
Index_comment:
1 row in set (0.03 sec)
로그인 후 복사

주요 매개 변수는 다음과 같이 설명됩니다. 테이블.

Non_uniqueKey_nameSeq_in_indexColumn_nameCollation카디널리티Sub_partPackedNullIndex_typeComment

index关键字修改索引

DROP INDEX <索引名> ON <表名>
로그인 후 복사

语法说明如下:

  • <索引名>:要删除的索引名。

  • <表名>:指定该索引所在的表名。

说明:

在 MySQL 中修改索引可以通过删除原索引,再根据需要创建一个同名的索引,从而实现修改索引的操作。

【相关推荐:mysql视频教程

위 내용은 mysql 인덱스 키워드의 사용법은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
은 인덱스가 고유 인덱스인지 여부를 나타냅니다. 고유 인덱스가 아닌 경우 이 열의 값은 1이고, 고유 인덱스인 경우 이 열의 값은 0입니다.
은 인덱스의 이름을 나타냅니다.
는 인덱스에서 해당 열의 위치를 ​​나타냅니다. 인덱스가 단일 열인 경우 이 열의 값은 1이고, 인덱스가 결합된 인덱스인 경우 이 열의 값은 다음과 같습니다. 인덱스 정의의 각 열.
은 인덱스를 정의하는 열 필드를 나타냅니다.
은 열이 인덱스에 저장되는 순서를 나타냅니다. MySQL에서 오름차순은 "A"(오름차순) 값으로 표시되며, NULL로 표시되면 분류가 없음을 의미합니다.
인덱스의 고유 값 개수에 대한 추정치입니다. 카디널리티는 정수로 저장된 통계에 대해 계산되므로 작은 테이블의 경우에도 값이 정확할 필요는 없습니다. 카디널리티가 클수록 MySQL이 조인을 수행할 때 인덱스를 사용할 가능성이 커집니다.
은 열의 인덱스 문자 수를 나타냅니다. 열이 부분적으로만 인덱싱된 경우 열 값은 인덱싱된 문자 수입니다. 전체 열이 인덱싱된 경우 열 값은 NULL입니다.
는 키워드가 어떻게 포장되었는지 나타냅니다. 압축되지 않은 경우 값은 NULL입니다.
은 인덱스 열에 NULL이 포함되어 있는지 여부를 표시하는 데 사용됩니다. 열에 NULL이 포함되어 있으면 해당 열의 값은 YES입니다. 그렇지 않은 경우 이 열의 값은 NO입니다.
인덱스(BTREE, FULLTEXT, HASH, RTREE)에서 사용하는 유형과 방법을 표시합니다.
댓글을 표시합니다.