Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.2.1 |  CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 |  CUBRID 8.4.3 |  CUBRID 9.0.0 | 

TO_TIMESTAMP 함수

설명

TO_TIMESTAMP 함수는 인자로 지정된 타임스탬프 형식을 기준으로 문자열을 해석하여, 이를 TIMESTAMP 타입의 값으로 변환하여 반환한다. 타임스탬프 형식은 TO_CHAR 함수(date_time)의 설명 부분을 참고한다.

format 인자가 지정되면 지정한 언어에 맞는 형식으로 string을 해석한다. 예를 들어 언어가 "de_DE"일 때 string이 "12/mai/2012 12:10:00 Nachm."이고 format이 "DD/MON/YYYY HH:MI:SS AM"인 경우 "2012년 5월 12일 오후 12시 10분 0초"로 해석한다. 이때 언어는 date_lang_string_literal 인자에 의해 정해진다. date_lang_string_literal 인자가 생략되면 intl_date_lang 시스템 파라미터에 지정한 언어가 적용되며, intl_date_lang 값의 설정이 생략되면 CUBRID_LANG 환경변수에 지정한 언어가 적용된다. 주어진 문자열과 대응하지 않는 format 인자가 지정되면 에러를 반환한다.

format 인자가 생략되면 intl_date_lang 또는 CUBRID_LANG에 의해 설정된 언어의 기본 출력 형식을 따라 string을 해석한다(TO_CHAR(date_time) 함수날짜/시간 타입에 대한 언어별 기본 출력 형식 표 참고). 예를 들어 언어가 "de_DE"일 때 DATETIME 타입의 기본 format은 "HH24:MI:SS.FF DD.MM.YYYY"이다.

TO_TIMESTAMP(string [, format [,date_lang_string_literal]])

 

string :

character strings

NULL

 

format :

character strings (날짜/시간 형식 1 표 참조)

NULL

 

date_lang_string_literal : (date_lang_string_literal 표 참조)

• 'en_US'

• 'de_DE'

• 'es_ES'

• 'fr_FR'

• 'it_IT'

• 'ja_JP'

• 'km_KH'

• 'ko_KR'

• 'tr_TR'

• 'vi_VN'

• 'zh_CN'

  • string : 문자열을 반환하는 임의의 연산식이다. 값이 NULL이면 결과로 NULL이 반환된다.
  • format : 타임스탬프 타입으로 변환할 값의 형식을 지정하며, TO_CHAR 함수(date_time)의 날짜/시간 형식 표를 참고한다. 값이 NULL이면 결과로 NULL이 반환된다.
  • date_lang_string_literal : 입력 값에 적용할 언어를 지정한다.
예제

다음은 환경 변수 CUBRID_LANG의 값을 "en_US"로 설정하여 생성된 데이터베이스에서 수행하는 예이다.

--selecting a timestamp type value casted from a string in the specified format

 

SELECT TO_TIMESTAMP('13:10:30 12/25/2008');

 to_timestamp('13:10:30 12/25/2008')

======================================

  01:10:30 PM 12/25/2008

 

SELECT TO_TIMESTAMP('08-Dec-25 13:10:30', 'YY-Mon-DD HH24:MI:SS');

 to_timestamp('08-Dec-25 13:10:30', 'YY-Mon-DD HH24:MI:SS')

======================================

  01:10:30 PM 12/25/2008

 

SELECT TO_TIMESTAMP('YEAR: 2008 DATE: 12-25 TIME: 13:10:30', '"YEAR:" YYYY "DATE:" MM-DD "TIME:" HH24:MI:SS');

 to_timestamp('YEAR: 2008 DATE: 12-25 TIME: 13:10:30', '"YEAR:" YYYY "DATE:" MM-DD "TIME:" HH24:MI:SS')

======================================

  01:10:30 PM 12/25/2008

다음은 intl_date_lang의 값이 "de_DE"일 때 수행한 예이다.

SELECT TO_TIMESTAMP('13:10:30 25.12.2008');

   to_timestamp('13:10:30 25.12.2008')

======================================

  01:10:30 PM 12/25/2008

 

SELECT TO_TIMESTAMP('10:23:00 Nachm.', 'HH12:MI:SS AM');

   to_timestamp('10:23:00 Nachm.', 'HH12:MI:SS AM')

===================================================

  10:23:00 PM 08/01/2012

참고 사항

환경 변수인 CUBRID_LANG의 로캘 값을 언어만 "en_US"(CUBRID 제품 설치 시 CUBRID_LANG의 초기 값)로 설정하고 "." 이하의 문자셋을 생략하는 경우, 문자셋은 ISO-8859-1(.iso88591)로 정해진다.

문자셋이 ISO-8859-1인 경우 "en_US" 외에 TO_TIMESTAMP 함수에서 변경할 수 있는 언어는 "ko_KR"과 "tr_TR"뿐이다. 문자셋이 UTF-8인 경우 CUBRID가 지원하는 모든 언어 중 하나로 변경할 수 있다. 보다 자세한 설명은 TO_CHAR 함수(date_time)참고 사항를 참고한다.