날짜시간 함수를 조건 절에서 어떻게 처리하는지 궁금해서요

by 펌피 posted Nov 08, 2017

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과 9.3.6
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

안녕하세요 큐브리드 작업을 하다가 궁금한 사항이 생겨서 이렇게 문의 드립니다.


REGIST_DATE : 2015-11-08 00:00:00.000


기존 조건절 쿼리

WHERE TO_CHAR(REGIST_DATE, 'YYYY-MM-DD') BETWEEN  #startDate# AND #endDate#


조건 컬럼에는 저렇게 형 변환을 해버리면 인덱스를 타지 않아서 속도에 문제가 생기고있어서 바꿀려고 하는데


저런식에 날짜시간 데이터 형식인경우에는  BETWEEN  #startDate# AND #endDate# 이부분에 어떻게 처리를 해줘야 하는지 조금 난감해서요.


이런식으로 REGIST_DATE BETWEEN TO_DATETIME('2015-11-08 00:00:00') AND TO_DATETIME('2016-11-08 23:59:59');


처리를 하면되는건지요...


 

REGIST_DATE  > 원본 데이터는 MS-SQL 이였고 이걸 큐브리드로 마이그레이션 툴로 이관을 했더니 모든 날짜에 뒤에 시,분,초,밀리초가 00:00:00.000 이렇게 들어가있더라고요


앞으로 저장 하는 날짜 함수는 SYSTIMESTAMP 으로 해서 저장하도록 하고있습니다.




Articles

4 5 6 7 8 9 10 11 12 13