안녕하세요. DB 초보라 혼자 공부하다 보니 너무 어려워 고수님들 도움을 청합니다.^^

일단 제가 궁금 한건 선택도에 관한 것 입니다.


제가 알고 있는 것은,

1. 컬럼에 nonclustered index 를 생성할 경우, 선택도가 좋은 컬럼에 index를 만들어야 한다.

2. 선택도 좋은지를 알 수 있는 방법은 통계를 보면 된다.

3. 해당 컬럼의 통계를 보는 방법중 하나는 dbcc show_statistics(table_name, index_name)

으로 알고 있습니다.

 

그럼, dbcc show_statistics 를 실행 했을 경우,

 

* 결과 데이터 중 어떤 것을 보고 선택도를 알 수 있는지 궁금 합니다.
제가 알고 있는 것은, 
  . 밀도(density) = 1 / distinct value 개수
  . 선택도(Selectivity) = 찾을 데이터 / 전체 행 수
인데,

 

 ㄱ. all density 컬럼에 나온 값이 선택도 인가요?
  검색을 해보니 all density 가 선택도 라고도 하고, 밀도 라고도 하고... 어떤것이 맞는거죠?

 

 ㄴ. 만약 all density 가 밀도라면 show_statistics(table_name, index_name) 실행 후 결과를 보고
     '해당 컬럼이 선택도가 좋다' 라는 것을 어떻게 판단해야 하나요?

    - 어떤 웹페이지에서는 '선택도가 0.43% 이하(table 마다 다를 수 있음) 일 경우, 인덱스를 걸어도 좋다..' 라고 하는데
    all density 가 밀도라면, 선택도를 show_statistics 실행 후 결과를 보고 어떻게 계산 해야 하는 것인가요?

 

정말 헷갈리네요..

 

고수님들의 자세한 조언 부탁 드립니다.

 

꾸벅.

No. Subject Author Date Views
Notice 2023년 1월 - SQLER의 업데이트 강좌 리스트 코난(김대우) 2023.01.02 2160
6829 쿼리 질문드립니다. [2] seyo 2013.05.29 5791
6828 가로데이터를 세로데이터로 조건별로 출력 [3] kakakuku 2013.05.29 6443
6827 2008과 2008 R2 DB를 붙이고 싶습니다. [4] 전자사랑 2013.05.29 5580
6826 Convert함수 사용해서 검색할 경우 오류 [5] 준이네 2013.05.28 5642
6825 작년엔 거래하다가 올해는 거래없는 고객을 찾으려면? [4] 길주석 2013.05.28 5742
6824 일 별로 동일한 시간대에 발생한 데이터의 평균을 구하고 싶습니다. [1] 나는짱이야 2013.05.28 5611
6823 SQL 64bit 메모리 설정 [3] 홍훈아 2013.05.28 6308
6822 select 질문 하나더..ㅠㅠ [2] 형님 2013.05.27 5466
6821 DB서버안에 SQL버전별 운영이 가능할가요? [16] 김영환_281520 2013.05.27 5658
6820 MS SQL 라이센스 질문 [2] masaru 2013.05.27 6099
6819 쿼리 질문입니다. [3] 치맥 2013.05.27 5643
6818 Bulk Inser 에서 파일 순서대로 업로드 [2] 534543 2013.05.27 5712
6817 값 조회시 값이 아무것도 없을 때 [3] q0822kang 2013.05.27 7781
6816 show_statistics 실행시 선택도 어떻게 봐야 하는거죠? [1] zamta 2013.05.26 7610
6815 MSSQL에서 date관련으로 질의할 때 질문입니다. [1] Optimist 2013.05.25 6008
6814 오라클 간단한 쿼리 문의좀요... [1] 궁금 2013.05.25 6164
6813 백업과 복원에 대하여 [2] 전념 2013.05.25 5760
» 인덱스 선택도 개념 좀 알려주세요. 제발~ [10] zamta 2013.05.24 11328
6811 로그 관련 문의 드립니다. [3] 죠리퐁 2013.05.24 5695
6810 dtsx파일에관한 질문입니다... 문수정 2013.05.24 7783





XE Login