[SQL]-索引の概念


1.索引

  • の本の閲覧と同じです.
  • が多いのは良いという意味ではありません.
  • MySQLが判断します.
  • 2.長所と短所

  • の利点
  • SELECT文で検索する速度は非常に速い.
  • コンピュータの負荷を低減することにより、システム全体の性能を向上させる
  • .
  • 欠点
  • には、追加のスペース(テーブルサイズの10%)が必要です.
  • インデックスを最初に作成するには時間がかかる場合があります.
  • のデータ変更が頻繁に発生すると、パフォーマンスが低下する可能性があります.
  • 3.索引タイプ

  • クラスタインデックス
  • 英語辞書のように、本の内容はアルファベット順に並んでいます.
  • 補助インデックス
  • また、
  • が閲覧し、閲覧中に単語を検索し、隣に表示されているページを展開して
  • を検索する.

    4.自動生成インデックス

  • プライマリ・キーとして指定すると、クラスタ・インデックスがプライマリ・キー列に自動的に作成されます.
  • プライマリ・キーはテーブルに1つしか指定できません->最終クラスタ・インデックスはテーブルに
  • しか指定できません.
    USE market_db;
    CREATE TABLE TABLE1(
    col1 INT PRIMARY KEY,
    col2 INT,
    col3 INT
    );
  • key nameにprimaryと書いてあります.
  • ユニークキーによってインデックスも自動的に生成されます.
    CREATE TABLE TABLE2(
    col1 INT PRIMARY KEY,
    col2 INT UNIQUE,
    col3 INT UNIQUE
    );
    
    SHOW INDEX FROM TABLE2;

    5.自動ソートされたクラスタインデックス

    USE market_db;
    DROP TABLE if EXISTS buy, member;
    CREATE TABLE member
    (mem_id CHAR(8),
    mem_name VARCHAR(10),
    mem_number INT,
    addr CHAR(2)
    );
    INSERT INTO member VALUES('TWC', '트와이스', 9, '서울');
    INSERT INTO member VALUES('BLK', '블랙핑크', 4, '경남');
    INSERT INTO member VALUES('WMN', '여자친구', 6, '경기');
    INSERT INTO member VALUES('OMY', '오마이걸', 7, '서울');
    SELECT * FROM member;

    mem id列をプライマリ・キーに設定し、内容を確認します.
    ALTER TABLE member
    ADD CONSTRAINT
    PRIMARY KEY(mem_id);
    SELECT * FROM member;

    アイデンティティー順

    6.並べ替えられていない補助インデックス

  • 補助インデックスはソートされません.
  • DROP TABLE if EXISTS member;
    CREATE TABLE member
    (mem_id CHAR(8),
    mem_name VARCHAR(10),
    mem_number INT,
    addr CHAR(2)
    );
    INSERT INTO member VALUES('TWC', '트와이스', 9, '서울');
    INSERT INTO member VALUES('BLK', '블랙핑크', 4, '경남');
    INSERT INTO member VALUES('WMN', '여자친구', 6, '경기');
    INSERT INTO member VALUES('OMY', '오마이걸', 7, '서울');
    SELECT * FROM member;
    ALTER TABLE member
    ADD CONSTRAINT
    UNIQUE(mem_id);
    SELECT * FROM member;

    順序が変わらない