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 1677 게시물 읽기
No. 1677
index 생성 하였는뎅 안타는것 같아요..
작성자
초보
작성일
2006-09-27 16:53
조회수
5,987
t_ndetails_0428이라는 테이블에 아래와 같이 인덱스를 걸었습니다.

create nonclustered index f_uq_datetimepid on t_ndetails_0428 (f_call_date,f_call_time,f_call_pid)


그리고 난후 아래와 같이 조건식을 주어서 커리 했을경우

select * from t_ndetails_0428
where f_call_date='2006-04-29' and
f_call_time >  '11:00:00' and f_call_time<'23:00:00' and
f_call_pid= '112359'

plan 을 걸어 보면

QUERY PLAN FOR STATEMENT 1 (at line 1).

     STEP 1
        The type of query is SELECT.


        FROM TABLE
            t_ndetails_0428
        Nested iteration.
        Table Scan.
        Forward scan.
        Positioning at start of table.
        Using I/O Size 2 Kbytes for data pages.
        With LRU Buffer Replacement Strategy for data pages.


Parse and Compile Time 0.
SQL Server cpu time: 0 ms.
Table: t_ndetails_0428  scan count 1,  logical reads: (regular=13786 apf=0 total=13786), 
physical reads: (regular=0 apf=0 total=0),  apf IOs used=0
Total writes for this command: 0
 
Execution Time 0.
SQL Server cpu time: 0 ms.  SQL Server elapsed time: 326 ms.
(1656 rows affected)


이런식으로 나옵니다... 
plan을 봐서는 인덱스를 안탄것 같은데요...
왜 인덱스를 안타나요??? 안타는 이유좀 설명 부탁드립니다...
그리고 틀렸다면 설명와 타게 하는 방법좀 부탁드립니다..

꾸벅~ 
감사합니다.

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

인덱스를 만들었다고 무조건 인덱스를 사용하지는 않습니다.
그 판단은 옵티마이저가 비용 계산을 하게 됩니다.
(순식간이죠)
데이터가 많지 않을 경우는 그냥 full scan하는 것이 빠르다고 옵티마이저가 판단합니다.
인덱스를 강제로 타게 하려면 
select * from t_ndetails_0428 (index f_uq_datetimepid )
where f_call_date='2006-04-29' and
f_call_time >  '11:00:00' and f_call_time<'23:00:00' and
f_call_pid= '112359'

처럼 괄호 안에 인덱스명을 주거나, 내부적으로 관리하는 인덱스 id를 주면됩니다. (0은 데이터, 1은 클러스터드 인덱스 2이상은 non-clustered index입니다.)

삘리리님이 2006-09-28 09:45에 작성한 댓글입니다.
이 댓글은 2006-09-28 11:56에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1681ETL 작업을 하는데 처음으로 sybase를 만났네요.
장일영
2006-10-02
4887
168010분단위로 시간 구하는 쿼리 [1]
왕초보
2006-09-30
6039
1678[질문입니다] 인덱스 관련...
장학우
2006-09-29
3997
1677index 생성 하였는뎅 안타는것 같아요.. [1]
초보
2006-09-27
5987
1676데이타 쿼리 속도문제 [1]
박진우
2006-09-27
5068
1674Oracle 하고 Sybase 질문 입니다.
한희성
2006-09-26
4859
1673dump tran와 DATA Insert의 관계 [2]
초보자
2006-09-25
5046
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다