| PostgreSQL 9.1.24 문서 | ||||
|---|---|---|---|---|
| PostgreSQL : 문서 : 9.1 : 패턴 스포츠 토토 결과 | 위로 | 제9장. 함수 및 연산자 | 다음 | |
그포스트그레SQL포맷중 토토 결과은 다양한 변환을 위한 강력한 도구 세트를 제공합니다. 데이터 유형(날짜/시간, 정수, 부동 소수점, 숫자) 토토 결과화된 문자열 및 토토 결과화된 문자열을 다음으로 변환하는 데 사용됩니다. 특정 데이터 유형.테이블 9-21나열합니다. 이러한 함수는 모두 공통 호출을 따릅니다. 규칙: 첫 번째 인수는 토토 결과을 지정할 값이고 두 번째 인수는 출력을 정의하는 템플릿입니다. 입력 토토 결과입니다.
단일 인수to_timestamp함수도 사용할 수 있습니다. 그것은 받아들인다더블
정도인수 및 Unix epoch(초)에서 변환
1970년 1월 1일 00:00:00+00)부터타임스탬프 포함
시간대. (정수유닉스 시대는
암시적으로 캐스팅됨배정밀도.)
표 9-21. 서식 토토 결과
| 토토 결과 | 반환 토토 결과 | 설명 | 예 |
|---|---|---|---|
to_char(타임스탬프,
텍스트) |
텍스트 | 타임스탬프를 문자열로 변환 | to_char(현재_타임스탬프, 'HH12:MI:SS') |
to_char(간격,
텍스트) |
텍스트 | 간격을 문자열로 변환 | to_char(간격 '15시 2분 12초', 'HH24:MI:SS') |
to_char(int, 텍스트) |
텍스트 | 정수를 문자열로 변환 | to_char(125, '999') |
to_char(더블
정도, 텍스트) |
텍스트 | 실수/배정밀도를 문자열로 변환 | to_char(125.8::실제, '999D9') |
to_char(숫자,
텍스트) |
텍스트 | 숫자를 문자열로 변환 | to_char(-125.8, '999D99S') |
to_date(텍스트, 텍스트) |
날짜 | 문자열을 날짜로 변환 | to_date('2000년 12월 5일', 'DD 월요일 YYYY') |
to_number(텍스트,
텍스트) |
숫자 | 문자열을 숫자로 변환 | to_number('12,454.8-', '99G999D9S') |
to_timestamp(텍스트,
텍스트) |
시간대가 포함된 타임스탬프 | 문자열을 타임스탬프로 변환 | to_timestamp('2000년 12월 5일', 'DD 월요일 YYYY') |
to_timestamp(더블
정도) |
시간대가 포함된 타임스탬프 | Unix 에포크를 타임스탬프로 변환 | to_timestamp(1284352323) |
에to_char출력 템플릿
문자열에는 인식되는 특정 패턴이 있으며
주어진 데이터를 기반으로 적절한 토토 결과의 데이터로 대체됩니다.
값. 템플릿 패턴이 아닌 텍스트는 모두 복사됩니다.
말 그대로. 마찬가지로 입력 템플릿 문자열(다른 템플릿의 경우)
함수), 템플릿 패턴은 제공될 값을 식별합니다.
입력 데이터 문자열로.
테이블 9-22토토 결과 지정에 사용할 수 있는 템플릿 패턴을 표시합니다. 날짜 및 시간 값입니다.
표 9-22. 날짜/시간에 대한 템플릿 패턴 서식
| 패턴 | 설명 |
|---|---|
| 흐흐 | 시간(01-12) |
| HH12 | 시간(01-12) |
| HH24 | 시간(00-23) |
| 미 | 분(00-59) |
| SS | 초(00-59) |
| MS | 밀리초(000-999) |
| 미국 | 마이크로초(000000-999999) |
| SSSS | 자정을 지난 초(0-86399) |
| 오전, 오전, 오후또는오후 | 자정 표시(마침표 없음) |
| 오전, 오전, 오후또는p.m. | 자정 표시(마침표 포함) |
| Y,YYY | 연도(4자리 이상)(쉼표 포함) |
| YYYY | 연도(4자리 이상) |
| YYY | 연도의 마지막 3자리 |
| YY | 연도 마지막 2자리 |
| Y | 연도의 마지막 숫자 |
| IYYY | ISO 8601 주 번호 연도(4자리 이상) |
| IYY | ISO 8601 주 번호 지정 연도의 마지막 3자리 |
| IY | ISO 8601 주 번호 지정 연도의 마지막 2자리 |
| I | ISO 8601 주 번호 연도의 마지막 숫자 |
| BC, bc, AD또는광고 | 연대 표시(마침표 없음) |
| B.C., b.c., A.D.또는a.d. | 연대 표시(마침표 포함) |
| 월 | 전체 대문자 월 이름(9까지 공백으로 채워짐) 문자) |
| 월 | 전체 대문자로 된 월 이름(9까지 공백으로 채워짐) 문자) |
| 월 | 전체 소문자 월 이름(9까지 공백으로 채워짐) 문자) |
| 월 | 대문자로 된 월 이름(3자 이내) 영어, 현지화된 길이는 다양함) |
| 월 | 대문자로 축약된 월 이름(3자 영어, 현지화된 길이는 다양함) |
| 월 | 약식 소문자 월 이름(3자 이내) 영어, 현지화된 길이는 다양함) |
| MM | 월 번호(01-12) |
| DAY | 전체 대문자 요일 이름(9까지 공백으로 채워짐) 문자) |
| 일 | 전체 대문자 요일 이름(9까지 공백으로 채워짐) 문자) |
| 일 | 전체 소문자 요일 이름(9까지 공백으로 채워짐) 문자) |
| DY | 약어 대문자 요일 이름(영문 3자, 현지화된 길이는 다양함) |
| 디 | 약식 대문자 요일 이름(영문 3자, 현지화된 길이는 다양함) |
| dy | 약어소문자 요일 이름(영문 3자, 현지화된 길이는 다양함) |
| DDD | 일(001-366) |
| 확인 | ISO 8601 주 번호 지정 연도의 일(001-371, 1일) 올해의 첫 번째 ISO 주의 월요일입니다) |
| DD | 일(01-31) |
| D | 요일, 일요일(1) 토요일까지 (7) |
| ID | ISO 8601 요일, 월요일 (1) ~ 일요일(7) |
| W | 월의 주(1-5)(첫 번째 주는 매월 1일) |
| WW | 연도의 주 수(1-53)(첫 번째 주는 다음 날짜에 시작됩니다. 그 해의 첫날) |
| IW | ISO 8601 주 번호 지정 연도의 주 수(01-53; 해당 연도의 첫 번째 목요일은 1주차에 속함) |
| CC | 세기(2자리)(21세기가 시작됨) 2001-01-01) |
| J | 율리우스력 기념일(기원전 4714년 11월 24일 이후 일수) 자정) |
| Q | 분기(무시됨to_date그리고to_timestamp) |
| RM | 월은 대문자 로마 숫자(I-XII; 나=1월) |
| rm | 월은 소문자 로마 숫자(i-xii; i=1월) |
| TZ | 대문자 시간대 이름 |
| tz | 소문자 시간대 이름 |
수정자는 모든 템플릿 패턴에 적용되어 템플릿 패턴을 변경할 수 있습니다. 행동. 예를 들어,FM월이것은월패턴이 있는FM수정자.표 9-23날짜/시간에 대한 수정자 패턴을 표시합니다. 서식을 지정합니다.
표 9-23. 다음에 대한 템플릿 패턴 수정자 날짜/시간 토토 결과
| 수정자 | 설명 | 예 |
|---|---|---|
| FM접두사 | 채우기 모드(선행 0 및 패딩 억제) 공백) | FM월 |
| TH접미사 | 대문자 서수 접미사 | DDTH예:12TH |
| 번째접미사 | 소문자 서수 접미사 | DD번째예:12번째 |
| FX접두사 | 고정 토토 결과 전역 옵션(사용 참고 사항 참조) | FX 월 DD 일 |
| TM접두사 | 번역 모드(현지화된 요일 및 월 이름 인쇄) 기반으로lc_time) | TM월 |
| SP접미사 | 주문 모드 (구현되지 않음) | DDSP |
날짜/시간 토토 결과에 대한 사용 참고사항:
FM앞에 오는 0을 억제하고 그렇지 않으면 추가될 후행 공백이 패턴의 출력은 고정 너비입니다. 안에PostgreSQL, FMOracle에서는 다음 사양만 수정합니다.FM이후의 모든 것에 영향을 미칩니다 사양 및 반복FM수정자는 채우기 모드를 켜거나 끕니다.
TM후행을 포함하지 않음 공백.
to_timestamp그리고to_date여러 개의 공백 건너뛰기
가 아닌 한 입력 문자열에 공백이 있어야 합니다.FX옵션이 사용됩니다. 예를 들어,to_timestamp('2000 6월',
'YYYY 월')작동하지만to_timestamp('2000 6월',
'FXYYYY 월')오류를 반환하는 이유는to_timestamp한 칸만 필요합니다.FX첫 번째로 지정되어야 합니다.
템플릿의 항목입니다.
일반 텍스트가 허용됩니다.to_char템플릿을 사용하여 출력됩니다.
문자 그대로. 하위 문자열을 큰따옴표로 묶어서 강제로 적용할 수 있습니다.
포함되어 있더라도 리터럴 텍스트로 해석됩니다.
패턴 키워드. 예를 들어,'"안녕하세요 년 "YYYY', 그YYYY연도 토토 결과로 대체되지만,
싱글Yin연도그렇지 않을 것입니다. 안에to_date, to_number및to_timestamp, 큰따옴표로 묶인 문자열 건너뛰기
문자열에 포함된 입력 문자 수, 예:"XX"두 개의 입력 문자를 건너뜁니다.
출력에 큰따옴표를 포함하려면 다음을 수행해야 합니다. 예를 들어 백슬래시를 앞에 붙입니다.'\"YYYY월\"'.
그YYYY문자열로부터의 변환 에게타임스탬프또는날짜연도를 처리할 때 제한이 있습니다. 4자리 이상. 숫자가 아닌 문자를 사용해야 합니다. 이후 템플릿YYYY, 그렇지 않으면 연도는 항상 4자리 숫자로 해석됩니다. 예를 들어 ( 20000년):to_date('200001131', 'YYYYMMDD')4자리 연도로 해석됩니다. 대신 연도 뒤에 숫자가 아닌 구분 기호를 사용하세요.to_date('20000-1131', 'YYYY-MMDD')또는to_date('20000Nov31', 'YYYYMonDD').
문자열에서 다음으로 변환 시타임스탬프또는날짜, 그CC(세기) 필드는 다음과 같은 경우 무시됩니다. 거기에YYY, YYYY또는Y,YYY필드. 만약에CC다음과 함께 사용됩니다YY또는Y그다음 연도 다음과 같이 계산됩니다.(CC-1)*100+YY.
ISO 8601 주 번호 지정 날짜(
그레고리력 날짜)는 다음과 같이 지정할 수 있습니다.to_timestamp그리고to_date두 가지 방법 중 하나로:
연도, 주, 요일: 예를 들어to_date('2006-42-4', 'IYYY-IW-ID')반환 날짜2006-10-19. 생략하는 경우 평일은 1(월요일)로 간주됩니다.
연도 및 일자: 예를 들어to_date('2006-291', 'IYYY-IDDD')또한 보고2006-10-19.
ISO 8601을 혼합하여 날짜를 입력하려고 시도 중 주 번호 매기기 필드와 그레고리력 날짜 필드는 말도 안되고 오류가 발생합니다. 의 맥락에서 ISO 8601 주 번호 매기기 연도, a의 개념"월"또는"일 월"의미가 없습니다. 그레고리력의 맥락에서 년, ISO 주간은 의미가 없습니다.
| 주의 |
|
그동안 |
문자열에서 다음으로 변환 중타임스탬프, 밀리초(MS) 또는 마이크로초(미국) 값은 초 자리로 사용됩니다. 소수점 이하. 예를 들어to_timestamp('12:3', 'SS:MS')3이 아닙니다 밀리초이지만 변환에서는 12로 계산되므로 300입니다. + 0.3초. 이는 토토 결과을 의미합니다.SS:MS, 입력 값12:3, 12:30및12:300동일한 수를 지정하십시오. 밀리초. 3밀리초를 얻으려면 다음을 사용해야 합니다.12:003, 전환이 중요함 12 + 0.003 = 12.003초입니다.
여기에 더 복잡한 예가 있습니다:to_timestamp('15:12:02.020.001230', 'HH:MI:SS.MS.US')은 15시간 12분 2초입니다 + 20밀리초 + 1230마이크로초 = 2.021230초.
to_char(..., 'ID')의 날
주 번호가 다음과 일치합니다.추출(isodow ...에서)함수이지만to_char(..., 'D')'s는 그렇지 않습니다
성냥추출(다우...)의
일 번호 매기기.
to_char(간격)토토 결과흐흐그리고HH1212시간제로 표시됨, 즉 0시간과 36시간
다음과 같이 출력합니다.12, 동안HH24전체 시간 값을 출력합니다.
간격이 23을 초과합니다.
테이블 9-24토토 결과 지정에 사용할 수 있는 템플릿 패턴을 표시합니다. 숫자 값.
표 9-24. 숫자에 대한 템플릿 패턴 서식
| 패턴 | 설명 |
|---|---|
| 9 | 지정된 자릿수의 값 |
| 0 | 앞에 0이 있는 값 |
| .(마침표) | 소수점 |
| ,(쉼표) | 그룹(천) 구분 기호 |
| 홍보 | 꺾쇠 괄호 안의 음수 값 |
| S | 번호에 고정된 기호(로케일 사용) |
| L | 통화 기호(로케일 사용) |
| D | 소수점 (로케일 사용) |
| G | 그룹 구분 기호(로케일 사용) |
| 미 | 지정된 위치에 빼기 기호(숫자 <인 경우) 0) |
| PL | 지정된 위치에 더하기 기호(숫자 0) |
| SG | 지정된 위치에 더하기/빼기 기호 |
| RN | 로마숫자(1~3999 사이에서 입력) |
| TH또는번째 | 서수 접미사 |
| V | 지정된 자릿수 이동(참고 참조) |
| EEEE | 과학적 표기법의 지수 |
숫자 토토 결과 지정에 대한 사용 참고사항:
다음을 사용하여 토토 결과화된 기호SG, PL또는미은 숫자에 고정되어 있지 않습니다. 예를 들어,to_char(-12, 'MI9999')생산'- 12'그러나to_char(-12, 'S9999')생산' -12'. 오라클 구현 다음의 사용을 허용하지 않습니다.미이전에9, 오히려 그렇게 해야 합니다.9선행미.
9결과는 다음과 같은 값입니다. 거기와 같은 자릿수9s. 숫자를 사용할 수 없으면 다음을 출력합니다. 공간.
TH값을 더 적게 변환하지 않습니다. 0보다 크고 분수를 변환하지 않습니다.
PL, SG, 그리고TH아르포스트그레SQL확장.
V효과적으로
값 입력 방법:10^n, 여기서n뒤에 나오는 자릿수입니다V. to_char다음의 사용을 지원하지 않습니다.V소수점과 결합
(예:99.9V99허용되지 않습니다).
EEEE(과학적 표기법)은 할 수 없습니다 다른 토토 결과과 조합하여 사용 숫자와 소수점 이외의 패턴이나 수정자 패턴이어야 하며 토토 결과 문자열의 끝에 있어야 합니다(예:9.99EEEE유효한 패턴입니다.)
특정 수정자는 모든 템플릿 패턴에 적용되어 다음을 수행할 수 있습니다. 행동을 바꾸세요. 예를 들어,FM9999이것은9999패턴FM수정자.표 9-25숫자에 대한 수정자 패턴을 표시합니다. 서식을 지정합니다.
표 9-25. 다음에 대한 템플릿 패턴 수정자 숫자 서식
| 수정자 | 설명 | 예 |
|---|---|---|
| FM접두사 | 채우기 모드(선행 0 및 패딩 억제) 공백) | FM9999 |
| TH접미사 | 대문자 서수 접미사 | 999TH |
| 번째접미사 | 소문자 서수 접미사 | 999번째 |
테이블
9-26사용의 몇 가지 예를 보여줍니다.to_char함수.
표 9-26.to_char예
| 표현 | 결과 |
|---|---|
| to_char(현재_타임스탬프, '일, DD HH12:MI:SS') | '화요일 , 06 05:39:18' |
| to_char(현재_타임스탬프, '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, '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, '999번째') | ' 482번째' |
| to_char(485, ''좋은 번호:'999') | '좋은 번호: 485' |
| to_char(485.8, '"이전:"999" 게시물:" .999') | '사전: 485 포스트: .800' |
| to_char(12, '99V999') | ' 12000' |
| to_char(12.4, '99V999') | ' 12400' |
| to_char(12.45, '99V9') | ' 125' |
| to_char(0.0004859, '9.99EEEE') | ' 4.86e-04' |