TRANSLATE 함수 - AWS Clean Rooms

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

TRANSLATE 함수

임의의 표현식에서 발견되는 모든 지정 문자를 지정한 대체 문자로 변경합니다. 기존 문자는 characters_to_replace의 문자 위치와 characters_to_substitute 인수에 따라 변환 문자로 매핑됩니다. characters_to_replace 인수에서 지정하는 문자 수가 characters_to_substitute 인수에서 지정하는 문자 수보다 많으면 characters_to_replace 인수의 추가 문자가 반환 값에서 생략됩니다.

TRANSLATE는 REPLACE 함수REGEXP_REPLACE 함수과 비슷합니다. 단, REPLACE는 전체 문자열 하나를 다른 문자열로 변경하고, REGEXP_REPLACE는 문자열에서 정규 표현식 패턴을 검색하는 반면 TRANSLATE는 단일 문자를 여러 차례 변경합니다.

인수가 NULL이면 반환되는 값도 NULL입니다.

명령문

TRANSLATE ( expression, characters_to_replace, characters_to_substitute )

인수

expression

변환 대상인 표현식입니다.

characters_to_replace

변경 대상인 문자가 포함된 문자열입니다.

characters_to_substitute

대체할 문자가 포함된 문자열입니다.

반환 타입

VARCHAR

다음은 문자열에서 일부 문자를 변경하는 예입니다.

select translate('mint tea', 'inea', 'osin'); translate ----------- most tin

다음 예에서는 다음 열의 모든 값에서 at 기호(@)를 마침표로 변경합니다.

select email, translate(email, '@', '.') as obfuscated_email from users limit 10; email obfuscated_email ------------------------------------------------------------------------------------------- Etiam.laoreet.libero@sodalesMaurisblandit.edu Etiam.laoreet.libero.sodalesMaurisblandit.edu amet.faucibus.ut@condimentumegetvolutpat.ca amet.faucibus.ut.condimentumegetvolutpat.ca turpis@accumsanlaoreet.org turpis.accumsanlaoreet.org ullamcorper.nisl@Cras.edu ullamcorper.nisl.Cras.edu arcu.Curabitur@senectusetnetus.com arcu.Curabitur.senectusetnetus.com ac@velit.ca ac.velit.ca Aliquam.vulputate.ullamcorper@amalesuada.org Aliquam.vulputate.ullamcorper.amalesuada.org vel.est@velitegestas.edu vel.est.velitegestas.edu dolor.nonummy@ipsumdolorsit.ca dolor.nonummy.ipsumdolorsit.ca et@Nunclaoreet.ca et.Nunclaoreet.ca

다음 예에서는 다음 열의 모든 값에서 공백을 밑줄로 변경하고 마침표를 제거합니다.

select city, translate(city, ' .', '_') from users where city like 'Sain%' or city like 'St%' group by city order by city; city translate --------------+------------------ Saint Albans Saint_Albans Saint Cloud Saint_Cloud Saint Joseph Saint_Joseph Saint Louis Saint_Louis Saint Paul Saint_Paul St. George St_George St. Marys St_Marys St. Petersburg St_Petersburg Stafford Stafford Stamford Stamford Stanton Stanton Starkville Starkville Statesboro Statesboro Staunton Staunton Steubenville Steubenville Stevens Point Stevens_Point Stillwater Stillwater Stockton Stockton Sturgis Sturgis