삽질의 현장/- DataBase

[삽잡이::sql] Table의 Index를 살펴보자! SHOW INDEX

shovelman 2016. 6. 14. 22:38



DB에서 원하는 데이터를 추출하기 위해서

Query문을 작성합니다.


이 때 대용량으로 데이터를 가져온다고 생각해봅시다.

여러 테이블들을 join 하고 sub로 두고


웩~ 



조금이나마 빠르게 Query문을 수행하기 위해서

index의 중요성을 지난번에 언급한 적이 있었습니다.


이 테이블에서의 Index 정보를 확인하겠다! 할 때에는

과감하게 SHOW INDEX 을 사용하십시요


index에 대한 정보가 잘 나옵니다.



SHOW INDEX returns table index information. 

The format resembles that of the SQLStatistics call in ODBC. 

This statement requires some privilege for any column in the table.


(출처_ MySQL)



SHOW INDEX 를 사용하게 된 table의 index 정보를 return 해준다고 합니다.


테이블 명은 뭔지... Unique 한지... 

인덱스 명은 무엇인지...

 컬럼 이름은 무엇인지... 등등을 알 수 있습니다.


1
2
3
4
5
SHOW INDEXES FROM sap_db;
 
  Table  Non_unique  Key_name          Seq_in_index  Column_name   Collation   Cardinality     Sub_part    Packed   Null    Index_type    Comment    Index_comment
==================================================================================================================================================================
  sap_db        0   UNIQUE_KEY                  1         idx       A              (NULL)        (NULL)    (NULL)             'BTREE'
cs



저는 이렇게 결과가 나옵니다.


Non_Unique 컬럼을 보니 데이터 중복이 불가능하구요,

Column 이름은 idx입니다.

Collation 을 보게 되면 A라고 되어있는데 

ASC 아시죠!? 오름 차순이라는 의미입니다.


뭐 이렇게 되군요!



좋습니다~

굳~