where 절 조건이 많으면 속도에 영향을 끼치나요?

where 절 조건이 많으면 속도에 영향을 끼치나요?

QA

where 절 조건이 많으면 속도에 영향을 끼치나요?

본문

where A = '1' AND B = '2' AND C != '' AND D = '4';

 

이런식으로  where 절에 조건이 많을 수록 속도가 느려지나요??

 

가능하면 조건을 줄이는 게 좋을까요?

이 질문에 댓글 쓰기 :

답변 6

조건절이 많은 경우, mysql 옵티마이저가 어떤 인덱스가 가장 효율적인지 찾는 과정에서 잘못된 인덱스를 사용할 가능성이 있습니다.

 

이때는 index hinting 을 쓰면 좋습니다.

mysql 에선 use index 입니다.

 

 

아니요 크게 차이 없습니다. 디비량에 따라 속도가 차이납니다. 해당은 대략 디비량이 최소 10만개 이상부터 고려해봐야할듯합니다.

조건절이 많으면 속도가 느려질수 있긴 합니다.

다만 조건절에 맞게 index를 설정하시면 속도가 개선되긴 합니다.

그래서 index 설정이 중요합니다.

테이블에 저장된 레코드수가 적을때에는 속도에 아무런 문제가 없을거 같습니다.

그러나 레코드수가 많을때에는 최대한 쿼리를 최적화 해야 합니다.

MySQL공식문서의 최적화부분을 보면 where구문을 최대한 단출하게 작성할것을 권장하고 있습니다.

이부분을 잘 연구해보시면 될거 같습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 46
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT