인덱스는 어떤 경우에 설정해야 할까요 ? 0 2 1,784

by 스페이드 [Oracle 기초] [2015.02.27 14:55:55]


ZIP.png (7,862Bytes)

예를들어 주소테이블이 있습니다.

 

[우편번호] 컬럼은 중복되는 값이 많습니다.

[건물주소1]

[건물주소2] 컬럼은 공백도 있을 수 있고, 값도 다양합니다.

 

검색을 하게 된다면 WHRE 조건저 에는 건물주소1+건물주소2 가 들어갈거에요

예를들면

테이블A join 테이블B on A.우편번호 = B.우편번호

WHERE [건물주소1]+[건물주소2] LIKE '%강남빌딩%'

 

이렇게 조회를 할거 같아요.

이런 경우 인덱스를 어떤 컬럼에 달아야 효과적일까요 ?

 

by 부쉬맨 [2015.02.28 19:47:29]

요구하신 내용으로보면

zip_code만 인덱스로 적용됩니다.

명칭으로 하기에는 앞뒤로 %%는 먹지않고

'주소%' 형태로 해야지 인덱스 효과를 적용될것입니다.

조건절(where)에 건물명으로 조건을 적용하실려면

그래도 건물주소1+건물주소2 로 결합한 컬럼을 추가하여 건물주소3을 인덱스로 적용하시면될꺼같네요.


by 스페이드 [2015.03.02 23:02:14]

상황에 따라 달라지는 것인데,

제가 너무 무턱대고 질문을 한거 같습니다^^

 

좀 생각해보니 어디에 달아야 할지 감이 오더라구요

감사합니다. !!

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