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
운영게시판
최근게시물
MySQL Q&A 29400 게시물 읽기
No. 29400
쿼리 튜닝좀 해주세요 흑흑
작성자
넌이미댓글을달고있다
작성일
2009-11-16 14:53
조회수
5,845

     SELECT a.pv, b.view, c.click, (b.view+c.click)-d.overlap FROM
    (SELECT COUNT(distinct vid) pv FROM user_pv_12566 where cururl=1 AND corpid=1405 AND secid=2646 AND adid=147394 AND
     rptday<=20091116) a,
    (SELECT COUNT(distinct vid) view FROM user_view_12566 where cururl=1 AND corpid=1405 AND secid=2646 AND adid=147394 AND
rptday<=20091116) b,
    (SELECT COUNT(distinct vid) click FROM user_click_12566 where cururl=1 AND corpid=1405 AND secid=2646 AND adid=147394 AND
 rptday<=20091116) c,
    (
        SELECT COUNT(DISTINCT x.vid) overlap  FROM
        user_view_12566 x, user_click_12566 y
        WHERE
        x.cururl=26 and y.cururl=26 and
        x.corpid=1405 and y.corpid=1405 and
        x.secid=2646 and y.secid=2646 and
        x.adid=147394 and y.adid=147394 and
        x.rptday<=20091116 and y.rptday<=20091116 and
        x.vid = y.vid) d

이런식으로 3개의 테이블을 사용하는데요 3개다 테이블 구조는 같습니다.
where  걸려있는 칼럼들은 모두 index 걸려있구요
corpid=1405 AND secid=2646 AND adid=147394 AND  rptday
이 칼럼을 자주 where 거는데
인덱스를 싸그리 묶어서 걸어주면더 빠를까요?
아님
x.cururl=26 and y.cururl=26 and
        x.corpid=1405 and y.corpid=1405 and
        x.secid=2646 and y.secid=2646 and
        x.adid=147394 and y.adid=147394 and
        x.rptday<=20091116 and y.rptday<=20091116 and
        x.vid = y.vid
이 부분때문에 느려지는거 같기도 한데 이걸 좀 바꿀방법이 없나요?




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

댓글을 이미 달고 있군요... ㅋㅋ

EXPLAIN 만 해보셔도 아시겠지만, user_... 테이블들에서 한 번에 참조할 수 있는 인덱스는 하나입니다.
말씀하신대로 멀티키 인덱스로 전환하는 것이, 용량은 더 사용하겠지만 속도는 비교할 수 없으리라 생각되는군요.

박현우(lqez)님이 2009-11-16 16:20에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
29403하나의 row를 여러개의 row로 바꾸고 싶습니다 [1]
이동훈
2009-11-17
6053
29402학교 시간표 DB 쿼리문으로 이용 가능할까요? [1]
김성대
2009-11-17
5357
29401디비 백업 덤프시 깨지는 문자. UTF8 변환시 깨지는 문자. [1]
루리
2009-11-16
6585
29400쿼리 튜닝좀 해주세요 흑흑 [1]
넌이미댓글을달고있다
2009-11-16
5845
29399두 테이블이 서로 부모테이블 역할을 하면 문제가 될까요? 에러나 나네요.
천성재
2009-11-16
5450
29398mysqlbinlog 실행 시 한글 깨짐
이성헌
2009-11-13
6437
29396cluster 관련 질문 [4]
김종섭
2009-11-12
6606
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다