>데이터 베이스 >MySQL 튜토리얼 >mysql 인덱스의 쿼리문은 무엇입니까?

mysql 인덱스의 쿼리문은 무엇입니까?

青灯夜游
青灯夜游원래의
2022-06-20 10:44:368254검색

mysql 인덱스의 쿼리 문은 "SHOW INDEX"이며, 이는 현재 데이터베이스 또는 지정된 데이터베이스의 테이블과 관련된 인덱스 정보를 반환할 수 있습니다. 전체 구문은 "SHOW INDEX FROM 테이블 이름 [FROM 데이터베이스 이름];"입니다. ; 여기서, "FROM 데이터베이스 이름" 옵션은 생략할 경우 현재 데이터베이스의 테이블과 관련된 인덱스 정보를 반환한다. 생략하지 않으면 지정된 데이터베이스의 테이블에 대한 인덱스 정보가 반환된다. 돌아왔다.

mysql 인덱스의 쿼리문은 무엇입니까?

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

인덱스 생성이 완료된 후 SQL 문을 사용하여 기존 인덱스를 볼 수 있습니다. MySQL에서는 SHOW INDEX 문을 사용하여 테이블에 생성된 인덱스를 볼 수 있습니다.

MySQL SHOW INDEX 문

SHOW INDEX 문은 현재 데이터베이스 또는 지정된 데이터베이스의 테이블과 관련된 인덱스 정보를 반환할 수 있습니다.

인덱스를 보기 위한 구문 형식은 다음과 같습니다.

SHOW INDEX FROM 表名 [ FROM 数据库名];

구문 설명은 다음과 같습니다.

  • 테이블 이름: 인덱스를 보려는 데이터 테이블의 이름을 지정합니다.

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

    아무 데이터베이스에도 연결되어 있지 않거나 다른 데이터베이스에 있는 테이블의 인덱스 정보를 가져오려는 경우 데이터베이스 이름을 지정할 수 있습니다.

SHOW INDEXES는 다음 정보를 반환합니다.

매개변수               설명
              테이블               인덱스가 생성된 데이터 테이블의 이름을 나타내며, 여기서는 tb_stu_info2 데이터 테이블이다.
              고유하지 않음               인덱스가 고유 인덱스인지 여부를 나타냅니다. 고유 인덱스가 아닌 경우 이 열의 값은 1이고, 고유 인덱스인 경우 이 열의 값은 0입니다.
              Key_name ​​​​​ 인덱스의 이름을 나타냅니다.
              Seq_in_index             인덱스에서 열의 위치를 ​​나타냅니다. 인덱스가 단일 열인 경우 이 열의 값은 1입니다. 인덱스가 결합된 인덱스인 경우 이 열의 값은 인덱스 정의에 있는 각 열의 순서입니다.
              Column_name             인덱스를 정의하는 열 필드를 나타냅니다.
              대조             인덱스에 열이 저장되는 순서를 나타냅니다. MySQL에서 오름차순은 "A"(오름차순) 값으로 표시되며, NULL로 표시되면 분류가 없음을 의미합니다.
              카디널리티             인덱스의 고유 값 수에 대한 추정치입니다. 카디널리티는 정수로 저장된 통계에 대해 계산되므로 작은 테이블의 경우에도 값이 정확할 필요는 없습니다. 카디널리티가 클수록 MySQL이 조인을 수행할 때 인덱스를 사용할 가능성이 커집니다.
              Sub_part               열의 인덱스 문자 수를 나타냅니다. 열이 부분적으로만 인덱싱된 경우 열 값은 인덱싱된 문자 수입니다. 전체 열이 인덱싱된 경우 열 값은 NULL입니다.
              포장됨               키워드가 압축되는 방식을 나타냅니다. 압축되지 않은 경우 값은 NULL입니다.
              Null             인덱스 열에 NULL이 포함되어 있는지 여부를 표시하는 데 사용됩니다. 열에 NULL이 포함되어 있으면 해당 열의 값은 YES입니다. 그렇지 않은 경우 이 열의 값은 NO입니다.
              Index_type ​​​​​​ 인덱스(BTREE, FULLTEXT, HASH, RTREE)가 사용하는 유형과 방법을 표시합니다.
              댓글               댓글을 표시합니다.

过滤索引信息

要过滤索引信息,请使用以下WHERE子句:

SHOW INDEXES FROM table_name
WHERE condition;

MySQL的SHOW INDEXES例子

我们将创建一个新表名为contacts演示SHOW INDEXES命令:

CREATE TABLE contacts(
    contact_id int AUTO_INCREMENT,
    first_name VARCHAR(100) NOT NULL,
    last_name VARCHAR(100) NOT NULL,
    email VARCHAR(100),
    phone VARCHAR(20),
    PRIMARY KEY(contact_id),
    UNIQUE(email),
    INDEX phone(phone),
    INDEX name(first_name,last_name) comment '按名字和姓氏'
);

mysql 인덱스의 쿼리문은 무엇입니까?

以下命令返回表中的所有索引信息contacts:

SHOW INDEXES FROM contacts;

mysql 인덱스의 쿼리문은 무엇입니까?

【相关推荐:mysql视频教程

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

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