database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
ㆍSybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Sybase Q&A 2434 게시물 읽기
No. 2434
조건의 우선순위
작성자
karerina
작성일
2009-03-10 13:44
조회수
8,347

클러스터 인덱스와 넌클러스 인덱스 모두 존재 할때 인덱스 우선 순위가 있나요?

그리고 조건문에서 연산자에선 순위가 존재 하는걸로 알고 있는데 검색 조건에도 이 순위가 적용되는지요..


예를 들면


SELECT *

FROM    table a

WHERE  a.컬럼1 = '10'

AND      a.컬럼2 < '40'


이렇게 되어있을때 


컬럼 2는 클러스터 인덱스로 구성되어있고

컬럼 1은 넌클러스터 인덱스로 구성되어있습니다.


생각으로는 a.컬럼1 = '10' 이 더 정확한 값을 제시했기때문에 넌클러스터인덱스를 사용할것으로 예상 하였는데


실제로는 a.컬럼2 < '40' 이 조건을 먼저 확인하여 컬럼2로 구성된 클러스터인덱스를 사용하더라구요.


강제적으로 인덱스를 지정하지 않을 경우 인덱스 우선순위는 클러스터인덱스 인가요?

이 글에 대한 댓글이 총 2건 있습니다.

곡 그렇지는 않을것 같은데요...


가장 효율적이다고 판단 되는것으로 사용하는걸로 알고 있는데..


조건을 반대로 해보세요.... 클러스터인덱스를 먼저 탄다보 볼수는 없을듯...


WHERE  a.컬럼1 >'10'

 AND      a.컬럼2 = '40'


지나가다가님이 2009-03-11 21:43에 작성한 댓글입니다. Edit

건수에 따라 틀릴거에요



a.컬럼2 < '40'



table이 APL인경우 클러스터 인덱스가 있는 경우 between query의 경우 



클러스터 인덱스를 그냥 순차적으로 읽으면 되므로


아마 클러스터 인덱스를 탄겁니다.



dbcc 명령으로 왜 그 인덱스를 선택했는지 확인 할수 있습니다.

지연님이 2009-03-19 20:31에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
2438logical reads가 과연 성능 측정에 척도가 될까요? [2]
karerina
2009-03-12
8626
2437[급질]ODBC error [1]
DawnLee
2009-03-12
8625
2435수정 : TO_CHAR 대체 질문 드려요..^^; [2]
1남2녀
2009-03-10
11892
2434조건의 우선순위 [2]
karerina
2009-03-10
8347
2433시스템정보를 이용해서 테이블생성 스크립트작성 방법 좀 알려주세요(초보) [2]
지젤
2009-03-09
9238
2432간단한 튜닝 관련 질문입니다. [1]
AZA
2009-03-05
8007
2431대용량 데이터 삽입 [3]
임태근
2009-03-05
9790
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다