이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 9.4. 스포츠 토토 결과 함수 및 연산자버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

9.4. 문자열 함수 및 연산자

이 섹션에서는 검사를위한 기능 및 연산자를 설명합니다 젠 토토 값을 조작합니다. 이 맥락에서 젠 토토에는 포함됩니다 모든 유형의 값캐릭터, 캐릭터 다양한​​텍스트. 달리 언급되지 않는 한, 모든 기능 아래에 나열된 모든 유형에서 작업하지만 잠재력에주의하십시오. 사용시 자동 패딩의 효과문자타입. 일반적으로 설명 된 기능 여기에서는 비 스트링 유형의 데이터에 대해서도 작동합니다. 먼저 문자열 표현에 대한 데이터. 일부 기능도 존재합니다 비트 스트링 유형에 대해 기본적으로.

SQL일부 문자열을 정의합니다 특정 키 단어가 오히려 특수 구문과 기능 쉼표는 인수를 분리하는 데 사용됩니다. 세부 사항은테이블 9-5. 이러한 기능은 정규를 사용하여 구현됩니다 기능 호출에 대한 구문. (보다테이블 9-6.)

표 9-5.SQL문자열 함수 및 연산자

기능 반환 유형 설명 example 결과
String || String 텍스트 문자열 연결 'post'|| 'gresql' PostgreSQL
bit_length(String) int 문자열의 비트 수 bit_length ( 'Jose') 32
char_length(String)또는문자 _length(String) int 문자열의 문자 수 char_length ( 'Jose') 4
Convert(String사용converion_name) 텍스트 지정된 변환 이름을 사용하여 인코딩 변경. 전환은에 의해 정의 될 수 있습니다.생성 변환. 또한 사전 정의 된 것이 있습니다 변환 이름. 보다표 9-7사용 가능한 변환 이름은 convert ( 'postgresql'를 사용합니다 ISO_8859_1_TO_UTF8) 'PostgreSQL'UTF8에서 (유니 코드, 8 비트) 인코딩
Lower(String) 텍스트 소문자로 문자열을 변환 Lower ( 'Tom') Tom
Octet_length(String) int 문자열의 바이트 수 Octet_length ( 'Jose') 4
오버레이(String배치StringFromint[forint]) 텍스트 기판 교체 오버레이 ( 'txxxxas' 'hom'배치 4에서 4)에서 Thomas
위치(SubstringinString) int 지정된 하위 문자의 위치 위치 ( 'om'in '도마') 3
Substring(String[Fromint] [forint]) 텍스트 Extract attring 서브 스트링 ( 'Thomas'에서 2 for 3) hom
Substring(StringFrom패턴) 텍스트 POSIX 정규 표현식을 일치시키는 기판 추출. 보다롤 토토 PostgreSQL : 문서 : 8.1 : 패턴 매칭패턴 매칭에 대한 자세한 정보. 서브 스트링 ( '토마스' '... $') mas
Substring(StringFrom패턴for탈출) 텍스트 추출 기판 매칭SQL정규 표현. 보다섹션 9.7더 많은 것 패턴 매칭에 대한 정보. 서브 스트링 ( '토마스'에서 '%#"O_A#"_'for '#') OMA
트림([주요 | 후행 | 둘 다] [캐릭터] 에서String) 텍스트 |캐릭터(공간에 의한 기본값) 시작/끝/양쪽 끝에서String 트림 (둘 다 'x'에서 'XTOMXX') Tom
어퍼(String) 텍스트 문자열을 대문자로 변환 어퍼 ( 'Tom') Tom

추가 문자열 조작 함수를 사용할 수 있으며 있습니다 에 나열됨표 9-6. 그들 중 일부는 내부적으로 사용되어SQL-Standard 문자열 함수에 나열테이블 9-5.

표 9-6. 기타 문자열 함수

기능 반환 유형 설명 example 결과
ASCII(텍스트) int ASCII코드 논쟁의 첫 성격 ascii ( 'x') 120
btrim(String 텍스트[, 캐릭터 텍스트]) 텍스트 만 구성된 가장 긴 문자열을 제거하십시오 의 캐릭터캐릭터(a 기본적으로 공간)의 시작과 끝에서String btrim ( 'xyxtrimyyx', 'xy') 트림
chr(int) 텍스트 주어진 문자ASCII코드 chr (65) a
Convert(String 텍스트, [src_encoding 이름,]dest_encoding 이름) 텍스트 문자열 변환dest_encoding. 원래 인코딩은입니다 지정src_encoding. 만약에src_encoding생략, 데이터베이스 인코딩이 가정됩니다. convert ( 'text_in_utf8', 'utf8', 'latin1') text_in_utf8ISO 8859-1 인코딩
decode(String 텍스트, 타입 텍스트) BYTEA 이진 데이터 디코드String이전에 인코딩Encode. 매개 변수 유형입니다 와 동일Encode. decode ( 'mtizaae =', 'base64') 123 \ 000 \ 001
Encode(data BYTEA, 타입 텍스트) 텍스트 이진 데이터 인코딩ASCII-표현. 지원 유형은 다음과 같습니다.Base64, hex, 탈출. Encode ( '123 \\ 000 \\ 001', 'base64') mtizaae =
Initcap(텍스트) 텍스트 각 단어의 첫 글자를 대문자로 변환합니다 그리고 나머지는 소문자입니다. 단어는의 시퀀스입니다 영숫자 문자는 비 alphanumeric으로 분리됩니다 캐릭터. InitCap ( 'Hi Thomas') Hi Thomas
길이(String 텍스트) int 문자 수String 길이 ( 'Jose') 4
LPAD(String 텍스트, 길이 int[, fill 텍스트]) 텍스트 채우기Stringto 길이길이선불로 캐릭터fill(공간 기본적으로). 인 경우Stringis 이미 더 길다길이그런 다음 (오른쪽에) 잘린 상태입니다. lpad ( 'hi', 5, 'xy') xyxhi
ltrim(String 텍스트[, 캐릭터 텍스트]) 텍스트 문자 만 포함 된 가장 긴 문자열을 제거합니다 에서문자(공간에 의한 기본값) 시작부터String ltrim ( 'zzzytrim', 'xyz') 트림
MD5(String 텍스트) 텍스트 MD5 해시 계산String, 결과를 반환합니다 16 진수 MD5 ( 'ABC') 900150983CD24FB0 D6963F7D28E17F72
pg_client_encoding() 이름 현재 클라이언트 인코딩 이름 pg_client_encoding () SQL_ASCII
quote_ident(String텍스트) 텍스트 주어진 문자열을 반환하여 의 식별자SQL문자열. 인용문은입니다 필요한 경우에만 추가하십시오 (즉, 문자열에 포함 된 경우 비 식별 자 문자 또는 사례 전달). 임베디드 따옴표가 제대로 두 배가되었습니다. QUOTE_INDEN ( 'foo bar') "Foo Bar"
QUOTE_LITERAL(String텍스트) 텍스트 주어진 문자열을 반환합니다. 의 문자열 문자SQL문자열. 임베디드 따옴표 그리고 백 슬래시는 제대로 두 배가되었습니다. quote_literal ( 'o \'reilly ') 'O''Reilly'
regexp_replace(String 텍스트, 패턴 텍스트, 교체 텍스트[,플래그 텍스트]) 텍스트 POSIX 정규 표현식을 일치시키는 부분 문자열 교체. 보다롤 토토 PostgreSQL : 문서 : 8.1 : 패턴 매칭패턴 매칭에 대한 자세한 정보. regexp_replace ( 'Thomas', '. [mn] a.', 'm') thm
반복(String 텍스트, 번호 int) 텍스트 반복String지정된번호of Times 반복 ( 'PG', 4) PGPGPGPG
교체(String 텍스트, From 텍스트, to 텍스트) 텍스트 모든 발생을 교체Stringof substringFromwith substringto 교체 ( 'abcdefabcdef', 'cd', '더블 엑스') abxxefabxxef
RPAD(String 텍스트, 길이 int[, fill 텍스트]) 텍스트 채우기StringTO 길이길이문자fill(공간에 의한 공간 기본). 인 경우StringIS 이미 더 길다길이그런 다음 잘 렸습니다. rpad ( 'hi', 5, 'xy') hixyx
rtrim(String 텍스트[, 캐릭터 텍스트]) 텍스트 문자 만 포함 된 가장 긴 문자열을 제거합니다 에서문자(공간에 의한 기본값) 끝까지String rtrim ( 'trimxxxx', 'x') 트림
split_part(String 텍스트, Delimiter 텍스트, 필드 int) 텍스트 분할StringonDelimiter주어진 필드를 반환하십시오 (하나에서 계산) split_part ( 'abc ~@~ def ~@~ ghi', '~@~', 2) def
strpos(String, Substring) int 지정된 서브 스트링의 위치 (동일위치 (SubstringinString), 그러나 역전 된 인수 명령) strpos ( 'high', 'ig') 2
서브 스트(String, From[, count]) 텍스트 추출 하부 스트링 (동일Substring (StringFromFromforcount)) 서브 스트 ( '알파벳', 3, 2) PH
TO_ASCII(텍스트[, 인코딩]) 텍스트 변환텍스트toASCII다른 것 부호화[A] to_ascii ( 'Karel') Karel
TO_HEX(번호 int또는bigint) 텍스트 변환번호그것의 동등한 16 진수 표현 TO_HEX (2147483647) 7fffffff
번역(String 텍스트, From 텍스트, to 텍스트) 텍스트 모든 캐릭터StringFrom세트는 의 해당 문자toset 번역 ( '12345', '14', '도끼') A23X5
참고 :
a.theTO_ASCII함수 지원 에서 전환latin1, latin2, latin9Win1250인코딩 만.

표 9-7. 내장 변환

변환 이름[A] 소스 인코딩 대상 인코딩
ASCII_TO_MIC SQL_ASCII mule_internal
ascii_to_utf8 SQL_ASCII UTF8
big5_to_euc_tw big5 EUC_TW
big5_to_mic big5 mule_internal
big5_to_utf8 big5 UTF8
EUC_CN_TO_MIC EUC_CN mule_internal
euc_cn_to_utf8 ​​EUC_CN UTF8
euc_jp_to_mic EUC_JP mule_internal
euc_jp_to_sjis EUC_JP SJIS
euc_jp_to_utf8 EUC_JP UTF8
EUC_KR_TO_MIC EUC_KR mule_internal
euc_kr_to_utf8 EUC_KR UTF8
euc_tw_to_big5 EUC_TW big5
euc_tw_to_mic EUC_TW mule_internal
euc_tw_to_utf8 EUC_TW UTF8
GB18030_TO_UTF8 GB18030 UTF8
gbk_to_utf8 GBK UTF8
ISO_8859_10_TO_UTF8 latin6 UTF8
ISO_8859_13_TO_UTF8 latin7 UTF8
ISO_8859_14_TO_UTF8 latin8 UTF8
ISO_8859_15_TO_UTF8 latin9 UTF8
ISO_8859_16_TO_UTF8 latin10 UTF8
ISO_8859_1_TO_MIC latin1 mule_internal
ISO_8859_1_TO_UTF8 latin1 UTF8
ISO_8859_2_TO_MIC latin2 mule_internal
ISO_8859_2_TO_UTF8 latin2 UTF8
iso_8859_2_to_windows_1250 latin2 Win1250
ISO_8859_3_TO_MIC latin3 mule_internal
ISO_8859_3_TO_UTF8 latin3 UTF8
ISO_8859_4_TO_MIC latin4 mule_internal
ISO_8859_4_TO_UTF8 latin4 UTF8
ISO_8859_5_TO_KOI8_R ISO_8859_5 KOI8
ISO_8859_5_TO_MIC ISO_8859_5 mule_internal
ISO_8859_5_TO_UTF8 ISO_8859_5 UTF8
ISO_8859_5_TO_WINDOWS_1251 ISO_8859_5 Win1251
iso_8859_5_to_windows_866 ISO_8859_5 Win866
ISO_8859_6_TO_UTF8 ISO_8859_6 UTF8
ISO_8859_7_TO_UTF8 ISO_8859_7 UTF8
ISO_8859_8_TO_UTF8 ISO_8859_8 UTF8
ISO_8859_9_TO_UTF8 latin5 UTF8
johab_to_utf8 Johab UTF8
KOI8_R_TO_ISO_8859_5 KOI8 ISO_8859_5
KOI8_R_TO_MIC 47552_47558 mule_internal
KOI8_R_TO_UTF8 KOI8 UTF8
KOI8_R_TO_WINDOWS_1251 KOI8 Win1251
KOI8_R_TO_WINDOWS_866 KOI8 Win866
MIC_TO_ASCII mule_internal SQL_ASCII
MIC_TO_BIG5 mule_internal big5
MIC_TO_EUC_CN mule_internal EUC_CN
MIC_TO_EUC_JP mule_internal EUC_JP
MIC_TO_EUC_KR mule_internal EUC_KR
MIC_TO_EUC_TW mule_internal EUC_TW
MIC_TO_ISO_8859_1 mule_internal latin1
MIC_TO_ISO_8859_2 mule_internal latin2
MIC_TO_ISO_8859_3 mule_internal latin3
MIC_TO_ISO_8859_4 mule_internal latin4
MIC_TO_ISO_8859_5 mule_internal ISO_8859_5
MIC_TO_KOI8_R mule_internal KOI8
MIC_TO_SJIS mule_internal SJIS
mic_to_windows_1250 mule_internal Win1250
mic_to_windows_1251 mule_internal Win1251
MIC_TO_WINDOWS_866 mule_internal Win866
sjis_to_euc_jp SJIS EUC_JP
sjis_to_mic SJIS mule_internal
sjis_to_utf8 SJIS UTF8
TCVN_TO_UTF8 Win1258 UTF8
uhc_to_utf8 UHC UTF8
UTF8_TO_ASCII UTF8 SQL_ASCII
UTF8_TO_BIG5 UTF8 big5
UTF8_TO_EUC_CN UTF8 EUC_CN
UTF8_TO_EUC_JP UTF8 EUC_JP
UTF8_TO_EUC_KR UTF8 EUC_KR
UTF8_TO_EUC_TW UTF8 EUC_TW
UTF8_TO_GB18030 UTF8 GB18030
UTF8_TO_GBK UTF8 GBK
UTF8_TO_ISO_8859_1 UTF8 latin1
UTF8_TO_ISO_8859_10 UTF8 latin6
UTF8_TO_ISO_8859_13 UTF8 latin7
UTF8_TO_ISO_8859_14 UTF8 latin8
UTF8_TO_ISO_8859_15 UTF8 latin9
UTF8_TO_ISO_8859_16 UTF8 latin10
UTF8_TO_ISO_8859_2 UTF8 latin2
UTF8_TO_ISO_8859_3 UTF8 latin3
UTF8_TO_ISO_8859_4 UTF8 latin4
UTF8_TO_ISO_8859_5 UTF8 ISO_8859_5
UTF8_TO_ISO_8859_6 UTF8 ISO_8859_6
UTF8_TO_ISO_8859_7 UTF8 ISO_8859_7
UTF8_TO_ISO_8859_8 UTF8 ISO_8859_8
UTF8_TO_ISO_8859_9 UTF8 latin5
UTF8_TO_JOHAB UTF8 Johab
UTF8_TO_KOI8_R UTF8 KOI8
UTF8_TO_SJIS UTF8 SJIS
UTF8_TO_TCVN UTF8 Win1258
UTF8_TO_UHC UTF8 UHC
UTF8_TO_WINDOWS_1250 UTF8 Win1250
UTF8_TO_WINDOWS_1251 UTF8 Win1251
UTF8_TO_WINDOWS_1252 UTF8 Win1252
UTF8_TO_WINDOWS_1256 UTF8 Win1256
UTF8_TO_WINDOWS_866 UTF8 Win866
UTF8_TO_WINDOWS_874 UTF8 Win874
Windows_1250_TO_SO_ISO_8859_2 Win1250 latin2
Windows_1250_TO_MIC Win1250 mule_internal
Windows_1250_TO_UTF8 Win1250 UTF8
Windows_1251_TO_SO_ISO_8859_5 Win1251 ISO_8859_5
Windows_1251_TO_KOI8_R Win1251 KOI8
Windows_1251_TO_MIC Win1251 mule_internal
Windows_1251_TO_UTF8 Win1251 UTF8
Windows_1251_TO_WINDOWS_866 Win1251 Win866
Windows_1252_TO_UTF8 Win1252 UTF8
Windows_1256_TO_UTF8 Win1256 UTF8
Windows_866_TO_SO_8859_5 Win866 ISO_8859_5
Windows_866_TO_KOI8_R Win866 KOI8
Windows_866_TO_MIC Win866 mule_internal
Windows_866_TO_UTF8 Win866 UTF8
Windows_866_TO_WINDOWS_1251 Win866 WIN
Windows_874_TO_UTF8 Win874 UTF8
참고 :
a.변환 이름은 표준 명명 체계를 따릅니다 소스의 공식 이름 비 알파럼 성 문자는 밑줄로 대체되었습니다 뒤 이어_to_동일하게 처리 된 대상 인코딩 이름. 따라서 이름은 관습 인코딩에서 벗어날 수 있습니다 이름.