Background Image

FORUM

조회 수 12687 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
안녕하세요.

큐브리드 쿼리 사용중에 cast연산이 있는데 질문이 있어 글을 씁니다.

where 조건문중에

           cast(regdate as date)=cast(systimestamp as date)

저렇게 오늘에 쓴 글을 가져오고자 조건문을 만들었습니다.

그런데 group by와 order by 그리고 for ORDERBY_NUM()과 같이 쓰니 결과가 늦게 나와 고민하던 중

          cast(wtime as date)=sysdate

저런식으로 오른쪽에 cast연산을 제거해주니 결과시간이 약 2배정도 빨라진 것을 보았습니다.

혹시 원인이 제가 생각하는 우측의 cast연산을 제거하여 생긴 결과인지 궁금하여 질문드립니다.

운영자님이 함 보시고 댓글로 말씀 부탁드립니다.

감사합니다^^
  • ?
    cubebridge 2010.03.23 00:57
    물론 한번의 연산이 줄어 들게 되므로 성능적인 효과가 있을 것입니다.
    현재 regdate의 값이 char이고 이를 date형태로 변경하여 현재 날짜와 비교하는 것보다 좌변에 있는 regdate의 값은 두고 우변의 sysdate를 가공하여 regdate와 비교하는 것이 성능적으로 더 좋을 것이라 생각됩니다.(to_char함수를 사용)
    원하시는 성능이 나오지 않는 다면 전체 쿼리를 한번 올려주시기를 부탁드립니다. 비밀글을 이용하셔도 됩니다.^^
  • ?
    남재우 2010.03.23 02:07
    안녕하세요.
    cast 연산의 제거로 성능이 올라갔을 정도라면 대상 데이터가 굉장히 많을 것 같습니다.
    실제 cast 제거로 인한 효과는 많지 않습니다. 아울러 올려주신 예가 조금 다른데요. 대상 필드명이(redgate, wtime) 다릅니다.
    질의는 기본적으로 인덱스를 사용해야 효과가 좋습니다. 따라서 wtime 에 인덱스가 있는지를 확인하시고 인덱스를 추가하시는 것이 좋습니다. 그리고 wtime 을 cast 하게 되면 인덱스를 사용할 수 없으므로 그냥 사용해야 합니다.  결국 아래와 같이 쓰시는 것이 좋습니다.
    wtime = cast(sysdate as ...) // 정확한 타입을 몰라 ... 로 했습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 43
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
594 java vm is not running 1 yoon 2010.04.03 15858
593 매니저에서 테이블 여러개를 한꺼번에 삭제 하려면? 1 초보 2010.04.02 10836
592 group by 오류 1 초보 2010.03.31 10444
591 mysql 데이트 컬럼 자르기 문의 2 초보 2010.03.31 16213
590 데이트타입 컬럼의 주를 구하는 함수는? 2 초보 2010.03.31 11081
589 데이터베이스 백업 문의 5 닉네임2 2010.03.31 9137
588 저장프로시저(function) 오류 문제입니다. 1 yoon 2010.03.29 10732
587 jdbc 관련 질문입니다. 톰켓 종료시 문제입니다. 3 노스 2010.03.25 14411
586 쿼리 오류 질문 입니다. 1 초보 2010.03.24 13830
585 디비 사용자 추가시 오류 문의드립니다. 1 큐브초보 2010.03.24 9984
584 DB 생성 오류 질문입니다. 3 노스 2010.03.24 12492
583 날짜함수 문의 4 초보 2010.03.24 12921
582 엔터 개행문자 역슬래쉬 문제 4 초보 2010.03.24 26550
581 grails에서 사용이 가능한 방법이 있나요? 1 nsky13 2010.03.23 13680
580 마이그레이션 툴문의 3 webdoors 2010.03.23 10497
» cast 연산쿼리 성능 질문드립니다~ 2 파란시인 2010.03.22 12687
578 JVM terminated. Exit code=13 이런 코드가 나와서 cubridmanager가 실행 안됩니다. 1 검신81 2010.03.19 22673
577 cubridmanager 의 호스트 목록이 가끔 사라집니다. 1 하야로비 2010.03.19 9975
576 mysql 쿼리 변환 질문 입니다. 5 초보 2010.03.16 12201
575 오라클과 큐브리드중 어느걸 도입해야하는지 고민중입니다. 1 신의손 2010.03.16 10475
Board Pagination Prev 1 ... 166 167 168 169 170 171 172 173 174 175 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales