substr()과 to_char() 0 1 3,505

by 손님 substr to_char [2012.09.06 08:48:26]


EXE_SDATE와 EXE_EDATE의 Data Type이 DATE입니다.

12/13(월/일)과 같은 형태로 나타내려고 할때~ 

1) TO_CHAR(b.exe_sdate,'dd/mm'), TO_CHAR(b.exe_edate,'dd/mm')
2) substr(b.exe_sdate,0,5), substr(b.exe_edate,0,5)

1)과 2)번 중에 어떤 것이 속도 면에서 좋은가요?
속도면에서 큰 차이가 없다면 어떻게 표현하는 것이 좋을까요?
by 마농 [2012.09.06 09:00:21]

1번은 dd/mm 이 아니라 mm/dd 이겠죠 ^^
측정 기준은 속도가 아니라 정확성일듯 하네요.
2번처럼 사용하시면 안됩니다.
Substr 은 문자함수이지 날짜 함수가 아닙니다.
따라서 Substr(날짜) 를 하게 되면 내부적으로 날짜를 문자로 바꾸게 되는데.
이 때 문자로 바뀔때의 날짜포맷이 지정되지 않았으므로 어떤 포맷으로 바뀔지 알 수 없습니다.
이는 해당 국가의 날짜 특성에 따라 달라 질수 있으며, 변경도 가능한 것이므로
특정 오라클 서버에서는 원하는 결과가 나올수도 있지만
모든 오라클 서버에 공통으로 적용할수는 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입