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 ...) // 정확한 타입을 몰라 ... 로 했습니다.

  1. No Image notice by admin 2024/04/23 by admin
    Views 118 

    CUBRID 사용자를 위한 DBeaver 도구 출시 안내

  2. SQLGate for CUBRID 영구 무료 라이선스 제공

  3. Collection에 관해 질문 드립니다.

  4. 큐브리드 실행

  5. is null 조건 쿼리가 더 오래 걸리는 이유가 무엇인가요?

  6. 무슨 오류인가요?

  7. 연동하는법좀

  8. 다름이아니라 PHP 모듈관련

  9. java vm is not running

  10. 매니저에서 테이블 여러개를 한꺼번에 삭제 하려면?

  11. group by 오류

  12. mysql 데이트 컬럼 자르기 문의

  13. 데이트타입 컬럼의 주를 구하는 함수는?

  14. 데이터베이스 백업 문의

  15. 저장프로시저(function) 오류 문제입니다.

  16. jdbc 관련 질문입니다. 톰켓 종료시 문제입니다.

  17. 쿼리 오류 질문 입니다.

  18. 디비 사용자 추가시 오류 문의드립니다.

  19. DB 생성 오류 질문입니다.

  20. 날짜함수 문의

  21. 엔터 개행문자 역슬래쉬 문제

  22. grails에서 사용이 가능한 방법이 있나요?

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