이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 9.8. 토토 꽁 머니 유형 토토 결과 토토 결과 기능버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

9.8. 토토 꽁 머니 유형 형식 형식 기능

thePostgreSQL서식 함수는 다양한 토토 꽁 머니 유형 (날짜/시간, 정수, 플로팅 포인트, 숫자)을 형식으로 변환하고 서식 된 문자열에서 특정 토토 꽁 머니 유형으로 변환하기위한 강력한 도구 세트를 제공합니다.표 9-23나열됩니다. 이러한 기능은 모두 공통 통화 규칙을 따릅니다. 첫 번째 인수는 토토 꽁 머니화 할 값이며 두 번째 인수는 출력 또는 입력 토토 꽁 머니을 정의하는 템플릿입니다..

표 9-23. 함수 서식

기능 반환 토토 꽁 머니 설명 example
TO_CHAR (타임 스탬프, 텍스트) 텍스트 타임 스탬프를 문자열로 변환 to_char (current_timestamp, 'hh12 : mi : ss')
TO_CHAR (간격, 텍스트) 텍스트 간격을 문자열로 변환 TO_CHAR (간격 '15H 2M 12S', 'HH24 : MI : SS')
TO_CHAR (int, 텍스트) 텍스트 정수를 문자열로 변환 TO_CHAR (125, '999')
TO_CHAR(이중 정밀, 텍스트) 텍스트 실제/이중 정밀도를 문자열로 변환 to_char (125.8 :: Real, '999d9')
to_char (숫자, 텍스트) 텍스트 숫자를 문자열로 변환 TO_CHAR (-125.8, '999D99S')
to_date (텍스트, 텍스트) 날짜 날짜로 문자열 변환 to_date ('05 12 월 2000 ','dd mon yyyy ')
to_number (텍스트, 텍스트) 숫자 문자열을 숫자로 변환 TO_NUMBER ('12, 454.8- ','99G999D9S ')
TO_TIMESTAMP (텍스트, 텍스트) 시간대가있는 타임 스탬프 스트링을 타임 스탬프로 변환 TO_TIMESTAMP ('05 DEC 2000 ','DD MON YYYY ')

참고 :단일 학습도 있습니다TO_TIMESTAMP함수; 보다표 9-30.

atto_char출력 템플릿 문자열에는 주어진 값에 따라 적절한 토토 꽁 머니의 데이터로 인식되고 대체되는 특정 패턴이 있습니다. 템플릿 패턴이 아닌 텍스트는 단순히 구두로 복사됩니다. 마찬가지로, 입력 템플릿 문자열 (다른 함수의 경우)에서 템플릿 패턴은 입력 데이터 문자열에 의해 제공 될 값을 식별합니다.

표 9-24날짜 및 시간 값 포맷에 사용할 수있는 템플릿 패턴을 표시합니다.

표 9-24. 날짜/시간 서식을위한 템플릿 패턴

패턴 설명
HH 시간의 시간 (01-12)
HH12 시간의 시간 (01-12)
HH24 시간의 시간 (00-23)
mi 분 (00-59)
SS Second (00-59)
MS 밀리 초 (000-999)
US 마이크로 초 (000000-999999)
SSSS 자정을지나 초 초 (0-86399)
am, am, PM또는PM Meridiem 표시기 (기간 없음)
a.m., A.M., p.m.또는p.m. Meridiem 표시기 (기간 포함)
y, yyy Comma와 함께 연도 (4 개 이상)
yyyy 연도 (4 자리 이상)
yyy 지난 3 자리
yy 지난 2 자리
y 올해의 마지막 숫자
iyyy ISO 8601 주 기간 (4 자리 이상)
iyy ISO 8601 주 기간의 마지막 3 자리
iy ISO의 마지막 2 자리 8601 주 기적 연도
i ISO의 마지막 숫자 8601 주 기적 연도
BC, BC, ad또는ad ERA 표시기 (기간 없음)
B.C., B.C., a.d.또는a.d. ERA 표시기 (기간 포함)
Month 전체 대문자 달 이름 (빈 태워 9 숯으로 묶음)
Month 전체 대문자 달 이름 (9 숯으로 빈 정지)
Month 전체 소문자 달 이름 (빈 태워에 9 숯)
Mon 약식 상류 달 이름 (영어로 된 3 숯, 현지화 된 길이는 다양)
Mon 약식 대문자 월 이름 (영어로 된 3 숯, 현지화 된 길이는 다양)
Mon 약식 소문자 이름 (영어로 된 3 숯, 현지화 된 길이는 다양함)
mm 월 번호 (01-12)
day 전체 대문자 날 이름 (9 숯으로 빈 정지)
day 전체 대문자 날 이름 (9 숯으로 빈 정지)
day 전체 소문자 날 이름 (9 숯으로 빈 정지)
dy 약식 상류의 날 이름 (영어로 된 3 숯, 현지화 된 길이는 다양함)
dy 약식 자본화 된 날 이름 (영어로 된 3 숯, 현지 길이는 다양)
dy 약식 소문자 날 이름 (영어로 된 3 숯, 현지화 된 길이는 다양)
DDD 일년의 날 (001-366)
iddd ISO의 날 8601 주 기적 연도 (001-371; 올해 1 일은 첫 번째 ISO 주일의 월요일)
DD 매월 (01-31)
d 주일, 일요일 (1) ~ 토요일 (7)
id ISO 8601 주일, 월요일 (1) ~ 일요일 (7)
W 월 주 (1-5) (첫 주가 월 첫날에 시작)
ww 주간 수 (1-53) (첫 주가 첫날에 시작)
iw ISO 8601 주 기간 (01-53; 올해의 첫 번째 목요일은 1 주일)
CC Century (2 자리) (21 세기는 2001-01-01에서 시작)
J 줄리안 날짜 (현지 자정에 기원전 4714 년 11 월 24 일 이후의 정수 일; 참조PostgreSQL : 문서 : 9.6 : 토토 캔 Dates)
Q Quarter (무시to_dateandTO_TIMESTAMP)
rm 대문자 로마 숫자의 달 (i-xii; i = 1 월)
rm 소문자 로마 숫자 (i-xii; i = 1 월)
TZ 대문자 시간 구역 약어 (insureto_char)
TZ 소문자 시간 구역 약어 (replusedto_char)
of UTC에서 시간대 오프셋 (지원되는to_char)

수정자는 모든 템플릿 패턴에 적용하여 동작을 변경할 수 있습니다. 예를 들어,fmmonthMonth패턴FM수정 자.표 9-25날짜/시간 토토 꽁 머니의 수정 자 패턴을 보여줍니다.

표 9-25. 날짜/시간 서식을위한 템플릿 패턴 수정 자

Modifier 설명 example
FMprefix 채우기 모드 (선행 제로 및 패딩 블랭드 억제) fmmonth
th접미사 어퍼 케이스 서수 접미사 ddth, 예 :12th
th접미사 소문자 서수 접미사 ddth, 예 :12th
FXprefix 고정 토토 꽁 머니 글로벌 옵션 (사용 메모 참조) FX Month DD Day
TM접두사 번역 모드 (현지일 및 월 이름을 인쇄하여LC_TIME) tmmonth
SP접미사 주문 모드 (구현되지 않음) DDSP

날짜/시간 토토 꽁 머니에 대한 사용 메모 :

  • FM패턴의 출력을 고정 된 범위로 만들기 위해 추가 된 주요 0 및 후행 블랭크를 억제합니다. 안에PostgreSQL, FMOracle에서 다음 사양 만 수정합니다FM모든 후속 사양에 영향을 미치고 반복FM수정자는 채우기 모드를 켜고 끄는 모드를 전환합니다.

  • TM후행 블랭크를 포함하지 않습니다.TO_TIMESTAMPandto_date무시TM수정 자.

  • TO_TIMESTAMPandto_date입력 문자열에서 여러 빈 공간을 건너 뛰지 않는 한FX옵션이 사용됩니다. 예를 들어,to_timestamp ( '2000 Jun', 'yyyy mon')작품이지만to_timestamp ( '2000 Jun', 'fxyyyy mon')오류를 반환하기 때문에TO_TIMESTAMP하나의 공간 만 기대합니다.FX템플릿의 첫 번째 항목으로 지정해야합니다.

  • TO_TIMESTAMPandto_date간단한 캐스팅으로 변환 할 수없는 입력 토토 꽁 머니을 처리하려면 존재합니다. 이러한 기능은 최소한의 오류 점검으로 입력을 자유롭게 해석합니다. 유효한 출력을 생성하는 동안 변환은 예상치 못한 결과를 얻을 수 있습니다. 예를 들어, 이러한 함수에 대한 입력은 정상 범위에 의해 제한되지 않으므로to_date ( '20096040', 'yyyymmdd')반환2014-01-17오류를 일으키지 않고. 캐스팅은이 행동이 없습니다.

  • 일반 텍스트가 허용됩니다to_char템플릿 및 문자 그대로 출력됩니다. 패턴 키워드가 포함되어 있어도 문자 그대로 해석되도록 하위 문자열을 이중 인용문으로 넣을 수 있습니다. 예를 들어,' "Hello Year"yyyy', Theyyyy연도 토토 꽁 머니로 대체되지만 단일yinYear안에to_date, to_numberTO_TIMESTAMP, 이중 인용 문자열 문자열에 포함 된 입력 문자 수를 건너 뜁니다 (예 :"xx"두 개의 입력 문자를 건너 뜁니다.

  • 출력에 이중 견적을 원한다면 백 슬래시와 앞에 있어야합니다.'\ "yyyy month \"'.

  • 연도 토토 꽁 머니 사양이 4 자리 미만인 경우 (예 :yyy, 공급 된 연도는 4 자리 미만이며, 연도는 2020 년에 가장 가까운 것으로 조정됩니다 (예 :951995 년이됩니다.

  • inTO_TIMESTAMPto_date, 부정적인 해는 BC를 의미하는 것으로 취급됩니다. 부정적인 해와 명시 적으로 글을 쓰면BC필드, 당신은 다시 광고를 얻습니다. 제로의 입력은 기원전 1으로 취급됩니다.

  • inTO_TIMESTAMPto_date, Theyyyy변환은 4 자리 이상으로 연도를 처리 할 때 제한이 있습니다. 이후에 숫자가 아닌 문자 또는 템플릿을 사용해야합니다.yyyy, 그렇지 않으면 연도는 항상 4 자리로 해석됩니다. 예를 들어 (20000 년과 함께) :to_date ( '2000001131', 'yyyymmdd')4 자리 연도로 해석됩니다. 대신와 같이 연중 이후에 비수분 분리기를 사용하십시오to_date ( '20000-1131', 'yyyy-mmdd')또는TO_DATE ( '20000NOV31', 'yyyymondd').

  • 문자열에서로 변환타임 스탬프또는날짜, TheCC(Century) 필드는 무시됩니다yyy, yyyy또는y, yyy필드. 만약에CCyy또는y그러면 연도는 지정된 세기의 해로 계산됩니다. 세기가 명시되어 있지만 해가 그렇지 않다면, 세기의 첫해는 가정됩니다.

  • ISO 8601 주 기적 날짜 (Gregorian 날짜와는 별도로)를 지정할 수 있습니다TO_TIMESTAMPandto_date두 가지 방법 중 하나 :

    • 연도, 주 번호 및 주중 : 예를 들어to_date ( '2006-42-4', 'iyyy-iw-id')날짜를 반환2006-10-19. 평일을 생략하면 1 (월요일)으로 간주됩니다.

    • 연도 및 연도 : 예를 들어to_date ( '2006-291', 'iyyy-iddd')또한 반환2006-10-19.

    ISO 8601 주 기적 필드와 Gregorian Date Fields의 혼합물을 사용하여 날짜를 입력하려고 시도하는 것은 무의미하며 오류가 발생합니다. ISO 8601 주 기적 연도의 맥락에서 A의 개념."Month"또는"월"의미가 없습니다. Gregorian 년의 맥락에서 ISO 주간에는 의미가 없습니다.

    주의

    whileto_dateGregorian과 ISO 주간 기업 날짜 필드의 혼합물을 거부합니다.TO_CHAR출력 토토 꽁 머니 사양과 같은 출력 토토 꽁 머니 사양.yyyy-mm-dd (iyyy-iddd)유용 할 수 있습니다. 하지만와 같은 글을 쓰지 마십시오.iyyy-mm-dd; 그것은 연초에 놀라운 결과를 얻을 것입니다. (보다섹션 9.9.1자세한 내용은

  • 문자열에서로 변환타임 스탬프, 밀리 초 (MS) 또는 마이크로 초 (US) 값은 10 진수 지점 다음 초 숫자로 사용됩니다. 예를 들어TO_TIMESTAMP ('12 : 3 ','SS : MS ')는 변환이 12 + 0.3 초로 계산되기 때문에 3 밀리 초가 아니라 300입니다. 이것은 토토 꽁 머니을 의미합니다SS : MS, 입력 값12:3, 12:3012:300동일한 수의 밀리 초를 지정하십시오. 3 밀리 초를 얻으려면 사용해야합니다12:003, 변환이 12 + 0.003 = 12.003 초로 계산됩니다.

    여기 더 복잡한 예가 있습니다 :TO_TIMESTAMP ('15 : 12 : 02.020.001230 ','hh24 : mi : ss.ms.us ')15 시간, 12 분 및 2 초 + 20 밀리 초 + 1230 마이크로 초 = 2.021230 초입니다.

  • to_char (..., 'id')의 주 금주의 번호는 일치합니다.Extract (Isodow에서 ...)기능이지만to_char (..., 'd')s는 일치하지 않습니다추출물 (Dow from ...)의 날 번호.

  • TO_CHAR (Interval)토토 꽁 머니HHandHH1212 시간 시계에 표시된대로, 즉 제로 시간 및 36 시간 출력으로12, whileHH24간격의 경우 23을 초과 할 수있는 전체 시간 값을 출력합니다.

표 9-26숫자 값을 토토 꽁 머니화하는 데 사용할 수있는 템플릿 패턴을 보여줍니다.

표 9-26. 숫자 서식을위한 템플릿 패턴

패턴 설명
9 숫자 위치 (무의미한 경우 삭제 될 수 있음)
0 숫자 위치 (무의미한 경우에도 삭제되지 않음)
.(기간) 소수점
,(쉼표) 그룹 (수천) 분리기
PR 각도 괄호의 음수 값
S 숫자에 고정 된 사인 (로케일 사용)
l 통화 기호 (로케일 사용)
d 소수점 (로케일 사용)
g 그룹 분리기 (로케일 사용)
mi 지정된 위치 (숫자 <0 인 경우).
pl 지정된 위치 (숫자 0 인 경우)
SG plus/minus sign in spewified position
RN 로마 숫자 (1과 3999 사이의 입력)
th또는th 서수 접미사
V 지정된 숫자 수를 바꾸십시오 (참고 참조)
eeee 과학 표기법을위한 지수

숫자 토토 꽁 머니에 대한 사용 메모 :

  • 0선행/후행 0이 포함되어 있어도 항상 인쇄 될 숫자 위치를 지정합니다.9또한 숫자 위치를 지정하지만, 리드 0 인 경우 공간으로 대체되며, 후행 0이고 채우기 모드가 지정되면 삭제됩니다. (을 위한to_number (),이 두 패턴 문자는 동일합니다.)

  • 패턴 문자S, l, Dg현재 로케일에 의해 정의 된 부호, 통화 기호, 소수점 및 수천 개의 분리기 문자를 나타냅니다 (참조33908_33921andlc_numeric). 패턴 문자 기간과 쉼표는 로케일에 관계없이 소수점과 수천 개의 분리기의 의미와 함께 정확한 문자를 나타냅니다.

  • 로그인에 대한 명시 적 조항이없는 경우to_char ()'패턴, 하나의 열이 표시에 예약되어 있으며 숫자 바로 왼쪽에 고정됩니다. 만약에S일부 왼쪽으로 나타납니다9's, 마찬가지로 숫자에 고정됩니다.

  • 사용 서명SG, pl또는mi는 숫자에 고정되어 있지 않습니다. 예를 들어,TO_CHAR (-12, 'MI9999')생산'-12'그러나TO_CHAR (-12, 'S9999')생산'  -12 '. (Oracle 구현은의 사용을 허용하지 않습니다.MI9그러나 오히려9precedemi.)

  • th값은 0보다 적은 값을 변환하지 않으며 분수 숫자를 변환하지 않습니다.

  • pl, SGtharePostgreSQL확장.

  • VwithTO_CHAR입력 값을 곱하기10^n, 여기서n다음 자리 수입니다V. Vwithto_number비슷한 방식으로 나눕니다.TO_CHARto_number사용을 지원하지 마십시오V소수점과 결합 (예 :99.9V99허용되지 않음).

  • eeee(과학 표기법)는 숫자 및 소수점 패턴 이외의 다른 토토 꽁 머니 패턴 또는 수정 자와 함께 사용할 수 없으며 토토 꽁 머니 문자열의 끝에 있어야합니다 (예 :9.99eee유효한 패턴).

특정 수정자는 모든 템플릿 패턴에 적용하여 동작을 변경할 수 있습니다. 예를 들어,FM99.9999.99FM수정 자.표 9-27숫자 토토 꽁 머니의 수정 자 패턴을 보여줍니다.

표 9-27. 숫자 서식을위한 템플릿 패턴 수정 자

Modifier 설명 example
FM접두사 채우기 모드 (후행 제로 및 패딩 블랭크 억제) FM99.99
th접미사 어퍼 케이스 서수 접미사 999th
TH접미사 소문자 서수 접미사 999th

표 9-28사용의 몇 가지 예를 보여줍니다to_char기능.

표 9-28.TO_CHAR

표현 결과
to_char (current_timestamp, 'day, dd hh12 : mi : ss') '화요일, 06 05:39:18'
to_char (current_timestamp, 'fmday, fmdd hh12 : mi : ss') '화요일, 6 05:39:18'
TO_CHAR (-0.1, '99 .99 ') '  -.10 '
TO_CHAR (-0.1, 'fm9.99') '-. 1'
TO_CHAR (-0.1, 'FM90.99') '-0.1'
TO_CHAR (0.1, '0.9') ' 0.1 '
TO_CHAR (12, '9990999.9') '    0012.0 '
TO_CHAR (12, 'FM9990999.9') '0012.'
TO_CHAR (485, '999') ' 485 '
TO_CHAR (-485, '999') '-485'
TO_CHAR (485, '9 9 9') ' 4 8 5 '
TO_CHAR (1485, '9,999') ' 1,485 '
TO_CHAR (1485, '9G999') ' 1 485 '
TO_CHAR (148.5, '999.999') ' 148.500 '
TO_CHAR (148.5, 'FM999.999') '148.5'
TO_CHAR (148.5, 'FM999.990') '148.500'
TO_CHAR (148.5, '999D999') ' 148,500 '
TO_CHAR (3148.5, '9G999D999') ' 3 148,500 '
TO_CHAR (-485, '999S') '485-'
to_char (-485, '999mi') '485-'
to_char (485, '999mi') '485'
TO_CHAR (485, 'FM999MI') '485'
TO_CHAR (485, 'PL999') '+485'
TO_CHAR (485, 'SG999') '+485'
TO_CHAR (-485, 'SG999') '-485'
TO_CHAR (-485, '9SG99') '4-85'
TO_CHAR (-485, '999PR') '<485'
to_char (485, 'l999') 'DM 485'
to_char (485, 'rn') ​​'        cdlxxxv '
to_char (485, 'fmrn') 'CDLXXXV'
to_char (5.2, 'fmrn') 'V'
TO_CHAR (482, '999th') ' 482nd '
to_char (485, ' "좋은 숫자 :"999') '좋은 번호 : 485'
TO_CHAR (485.8, ' "PRE :"999 "POST :".999') 'pre : 485 게시물 : .800'
TO_CHAR (12, '99V999') ' 12000 '
TO_CHAR (12.4, '99V999') ' 12400 '
TO_CHAR (12.45, '99V9') ' 125 '
to_char (0.0004859, '9.99eee') ' 4.86E-04 '