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
운영게시판
최근게시물
Oracle Q&A 41774 게시물 읽기
No. 41774
select 쿼리에 in 조건이 2개일때 index 를 태울수있나요??
작성자
아벨의꿈
작성일
2019-11-20 10:12
조회수
2,676

 

쿼리가 index가 안타서 테스트해보니까 in 조건이 2개라서 안타고있는걸 발견했습니다

 

exists로 바꿔서해봐도 조건이 2개면 안타는대 혹시 해결방법이있나요??

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

select /*+ index(T 인덱스) */ 

from   T 

where 1=1 

   and a in (...) 

   and b in (...) 

이런식으로 걸려있다는 건지요

index(테이블 인덱스) 힌트 지정을 해보세요. 

lucky님이 2019-11-20 14:19에 작성한 댓글입니다.
이 댓글은 2019-11-21 11:53에 마지막으로 수정되었습니다. Edit

 힌트도 걸어봤는대 안타더라구요 

아벨의꿈님이 2019-11-20 14:40에 작성한 댓글입니다. Edit

위의 구조대로 

테스트 해봤는데 인덱스 잘 탑니다. 

in 절 안의 데이터 유형이 맞는지, 

통계정보는 어떤지 확인해보는게 좋을 듯합니다.
(통계정보는 개발부터 충분히 테스트하면서 하세요) 

lucky님이 2019-11-20 15:01에 작성한 댓글입니다. Edit

다른 원인이 있을 것 같은데요.

해당 컬럼의 분산이 충분히 크지 않거나

묵시적 형변환이 발생한 것이거나

박인호(paerae)님이 2019-11-20 16:28에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41777금액이 변경된데 부터까지 누적합계를 구하고 싶습니다. [2]
빙수
2020-01-08
2663
41776view 생성 도와주세요 ㅠㅠ_내용 추가 및 작성 쿼리 첨부 [3]
고라니
2019-12-12
2448
4177510g reorg 작업에 대해 질문드려요 [1]
lee
2019-11-26
2250
41774select 쿼리에 in 조건이 2개일때 index 를 태울수있나요?? [4]
아벨의꿈
2019-11-20
2676
41773프로시저생성이 안됩니다.. 과제인데..ㅜ [1]
홍승표
2019-11-17
2508
41772더블 쿼테이션시 궁금한점입니다. [2]
김영후
2019-11-14
2578
41771Mssql 에서 오라클로 bcp 를 이용한 마이그 시 질문입니다
정희철
2019-11-06
2238
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다