데이터베이스 개발자 질문과 답변 게시판
데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.
인덱스가 걸린 필드를 조건을 줘야합니다
예를 들어서 우편번호 테이블에서
우편번호(ZIpPost)
========================
sido | gugun | dong | ucode --->인덱스 필드
----------------------------------------
서울특별시 강남구 방배동 001001001
서울특별시 강남구 방배1동 001001002
서울특별시 강남구 방배2동 001001003
서울특별시 강동구 강일동 001002001
서울특별시 강동구 고덕동 001002002
검색을 UCode에서 6자리만 같은걸 모두 조회하고 싶으면
select * from ZipPost where Left(UCode, 6) = '001002'
이렇게 쿼리를 하거나
select * from ZipPost where UCode Like '001002%'
이렇게 합니다
속도가 늦더라구요
도대체 어떻게 해야하나요?
where절에서 인덱스를 태우시려면 전자처럼 왼쪽 컬럼은 가공하시면 안됩니다.. 후자처럼 해도 속도가 많이 늦다면 UCode에 Index가 걸려있는지 확인 하시고,, 그래도 늦으시다면 SSD로 교체하시길..