Skip Headers

오라클 10g 함수
10g Release 1 (10.1)
Go to Documentation Home
HOME
Go to Book List
ORA_home
Go to Table of Contents
연구회
Go to Index
자료실
Go to Master Index
ORA_10G
Go to Feedback page
MAIL

Go to previous page
Previous
Go to next page
Next

TRANSLATE

문법

MAIN

translate::=
Description of translate.gif follows

그림 설명
 

목적

MAIN

TRANSLATE함수는 from_string에서 각 문자를 to_string안의 대응하는 문자로 치환하여 expr을 반환한다. from_string안에 존재하지 않는 expr안의 문자는 치환되지 않는다. 만약 expr이 문자열이라면, 홑 따옴표로 둘러쌓여야 한다. 인수 from_string는 to_string보다 더 많은 문자를 가질수 있다. 이 경우에, from_string의 마지막에 있는 여분의 문자는 to_string안에 상응하는 문자가 없다. 만약 이 여분의 문자가 char안에 있는 경우, 그러한 문자는 반환값으로부터 삭제된다.

반환값으로부터 from_string안의 모든 문자를 삭제하기 위해서 to_string에 대한 빈 문자열을 사용할수 없다. 오라클 데이터 베이스는 공백 문자열을 NULL로써 해석하고, 이 함수가 NULL 인수를 가지면, NULL을 반환한다.

TRANSLATE함수는 REPLACE함수에 의해 제공되는 관련 함수를 제공한다. REPLACE함수는 단일 문자열로부터 다른 단일 문자열의 치환과 문자열의 삭제를 실행할수 있다. TRANSLATE는 하나의 연산에서 단일 조작으로 복수의 단일 문자를 1대 1로 치환할수 있다.

이 함수는 CLOB데이터를 직접적으로 지원하지 않는다. 그러나 암묵적인 데이터 변환으로 CLOB를 인수로서 전달할수 있다.


참 조 :

REPLACE 참조.

예제

MAIN

다음 문장은 book 타이틀을 파일명으로써 이용되기 위해서 문자열로 변환한다. from_string는 공백,*,/,''(escape문자로써 여분의 apostrophe를 가지는)의 4개의 문자를 포함한다. to_string는 3개의 underscore를 소유한다. from_string의 4번째 문자(')에 대응하는 치환 문자가 없기 때문에, 반환되는 값으로 apostrophe가 삭제되었다.

SELECT TRANSLATE('SQL*Plus User''s Guide', ' */''', '___') FROM DUAL;

TRANSLATE('SQL*PLUSU
--------------------
SQL_Plus_Users_Guide