날짜 문자열에 대한 Oracle to_date 함수 사용(밀리초)
Oracle DB에 몇 가지 삽입을 수행해야 합니다.다음과 같은 형식의 날짜가 있습니다.
'23.12.2011 13:01:001'
설명서에 따라 다음과 같이 to_date 삽입물을 작성했습니다.
to_date('23.12.2011 13:01:01', 'DD.MM.YYYY HH24:MI:SS')
정상적으로 동작합니다.이제 다음 형식의 날짜가 밀리초 단위로 표시됩니다.
'23.12.2011 13:01:001'
다음을 시도했습니다.
to_date('23.12.2011 13:01:001', 'DD.MM.YYYY HH24:MI:SSFF3')
에러 01821이 표시됩니다.00000 - "날짜 형식이 인식되지 않습니다").
이 형식에는 밀리초 단위로 어떤 "String"을 사용해야 합니까?
오라클DATE는 1초 이상의 정밀도로 시간을 저장하지 않습니다.밀리초 단위의 정밀도 데이터는DATE기둥.
두 가지 옵션은 밀리초의 문자열을 잘라낸 후 변환하는 것입니다.DATE,예.
to_date( substr('23.12.2011 13:01:001', 1, 19), 'DD.MM.YYYY HH24:MI:SS' )
또는 스트링을 로 변환합니다.TIMESTAMP1밀리초의 정밀도를 지원합니다.
to_timestamp( '23.12.2011 13:01:001', 'DD.MM.YYYY HH24:MI:SSFF3' )
TO_DATE는 밀리초를 지원하지 않는 DATE 데이터 유형으로의 변환을 지원합니다.Oracle에서 밀리초를 지원하려면 TIMESTAMP 데이터 유형과 TO_TIMESTamp 함수를 살펴봐야 합니다.
도움이 됐으면 좋겠다.
세 자리 밀리초의 경우:
TO_CHAR(LN_AUTOD_UWRG_DTTM,'MM/DD/YYYY HH24:MI:SS.FF3')
6자리 밀리초의 경우:
TO_CHAR(LN_AUTOD_UWRG_DTTM,'MM/DD/YYYY HH24:MI:SS.FF'),
이 형식을 사용할 수 있습니다.SS.FF밀리초 동안:
to_timestamp(table_1.date_col), 'DD-Mon-R HH24:MI:SS.FF')
상세한 것에 대하여는, 다음을 참조해 주세요.
https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions193.htm
날짜 클래스를 타임스탬프로 변경해야 합니다.
String s=df.format(c.getTime());
java.util.Date parsedUtilDate = df.parse(s);
java.sql.Timestamp timestamp = new java.sql.Timestamp(parsedUtilDate.getTime());
언급URL : https://stackoverflow.com/questions/9180014/using-oracle-to-date-function-for-date-string-with-milliseconds
'sourcecode' 카테고리의 다른 글
| select 문의 Datetime 열을 UTC에서 로컬 시간으로 변환 (0) | 2023.04.18 |
|---|---|
| bash에서 "-ne"은 무슨 뜻입니까? (0) | 2023.04.18 |
| SQL Server가 대소문자를 무시하는 식입니다. (0) | 2023.04.13 |
| TypeError를 극복하는 방법: 캐시할 수 없는 유형: '리스트' (0) | 2023.04.13 |
| Windows(v10)에서 Android Studio를 완전히 제거하려면 어떻게 해야 합니까? (0) | 2023.04.13 |