@COMPUTE

@COMPUTE 함수를 사용하여 산술식의 값을 대상 열로 반환합니다. 함수에서 반환된 값은 문자열 형식입니다.

다음과 같이 산술 <expression>의 값을 다른 Oracle GoldenGate 함수로 반환할 때 @COMPUTE 구문을 생략할 수 있습니다.

@STRNUM ((AMOUNT1 + AMOUNT2), LEFT)

앞의 결과는 다음과 같은 결과를 반환합니다.

@STRNUM ((@COMPUTE (AMOUNT1 + AMOUNT2), LEFT)

산술식은 다음 요소의 조합일 수 있습니다.

구문

@COMPUTE (<expression>)

<expression>

적합한 산술 표현식입니다. 소수점 이하 자릿수를 더한 숫자 값은 17자리보다 클 수 없습니다. 이 제한을 초과하면 @COMPUTE는 다음과 유사한 오류를 반환합니다.

2013-08-01 01:54:22  ERROR   OGG-01334  Error mapping data from <column> to <column> in function COMPUTE.

예제

예 1

AMOUNT_TOTAL = @COMPUTE (AMT + AMT2)

예 2

AMOUNT_TOTAL = @IF (AMT >= 0, AMT * 100, 0)

예 3

ANNUAL_SALARY = @COMPUTE (MONTHLY_SALARY * 12)

mod(id,10) = 1 MAP otest.tab,TARGET mtest.tab1,FILTER (@compute (id \ 10) = 1)

이 예제는 나머지 SQL을 실행하는 방법을 보여줍니다. 3자의 id \ 10 사이에 공백이 있는지 확인합니다. 그렇지 않으면 필터 구문 오류로 보고됩니다.