MYSQL Index 생성 질문 0 5 1,181

by 김쿠쿠 [MySQL] INDEX [2021.04.28 09:48:20]


select
	A, B, C
from
	tb
where
	A = 'test1'
and
	B = 'test2'
and
	C= 'test3';
    
    
select
	A, B, C
from
	tb
where
	A = 'test1'
and
	C= 'test3';

 

이러한 형태로 조회를 한다고 했을때 index를 생성한다고 가정하면,

test1, test2, test3 < 멀티인덱스 1개만 생성해도 두개의 쿼리에서 정상적으로 인덱스를 탈 수 있는지 아니면,

test1, test2, test3 과 test1, test3 인덱스 2개를 각각 만들어야 되는지 궁금 합니다. ( _ _ )

by 마농 [2021.04.28 11:14:08]

2개 또는 3개 조건이 들어올수 있다면?
3개 항목 결합인덱스 하나만 생성하면 됩니다.
항상 들어오는 항목을 선두에 둬야 합니다. a, c, b
http://gurubee.net/lecture/2229


by 김쿠쿠 [2021.04.28 11:34:11]

마농님 지식 도움 주셔서 감사합니다. !! ^^


by 김쿠쿠 [2021.04.28 15:03:11]
select
    A, B, C
from
    tb
where
    A = 'test1'
and
    B= 'test2';

 

혹시 A는 고정인데, B 혹은 C가 1개씩 혹은 다같이 조건절에 포함 될 수 있는 경우에도, 1개의 결합인덱스로 처리가 가능 할까요?


by 마농 [2021.04.28 15:16:13]

더 많이 쓰는 항목을 앞쪽에 배치하세요.


by 김쿠쿠 [2021.04.28 17:55:57]

넵 ^^ 감사합니당~!

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입