Informatica PowerCenter中 TO_BIGINT,TO_DECIMAL这两个函数遇到字符串时 会自动返回0值 而不报错。
TO_BIGINT( value [, flag] )
TO_BIGINT( IN_TAX, TRUE )
IN_TAX
|
RETURN VALUE
|
'7245176201123435.6789'
|
7245176201123435
|
'7245176201123435.2'
|
7245176201123435
|
'7245176201123435.2.48'
|
7245176201123435
|
NULL
|
NULL
|
'A12.3Grove'
|
0
|
' 176201123435.87'
|
176201123435
|
'-7245176201123435.2'
|
-7245176201123435
|
'-7245176201123435.23'
|
-7245176201123435
|
-9223372036854775806.9
|
-9223372036854775806
|
9223372036854775806.9
|
9223372036854775806
|
TO_BIGINT(IN_TAX)
IN_TAX
|
RETURN VALUE
|
'7245176201123435.6789'
|
7245176201123436
|
'7245176201123435.2'
|
7245176201123435
|
'7245176201123435.348'
|
7245176201123435
|
NULL
|
NULL
|
'A12.3Grove'
|
0
|
' 176201123435.87'
|
176201123436
|
'-7245176201123435.6789'
|
-7245176201123436
|
'-7245176201123435.23'
|
-7245176201123435
|
-9223372036854775806.9
|
-9223372036854775807
|
9223372036854775806.9
|
9223372036854775807
|
TO_DECIMAL( value [, scale] )
例:
TO_DECIMAL( IN_TAX, 3 )
IN_TAX
|
RETURN VALUE
|
'15.6789'
|
15.679
|
'60.2'
|
60.200
|
'118.348'
|
118.348
|
NULL
|
NULL
|
'A12.3Grove'
|
0
|
'711A1'
|
711
|
'1234567890.123'
|
1234567890.123
|
'123456789012345678901234567890.123'
|
Error. Integration Service skips this row.
|
'1234567890123456789012345678901234567890.123
|
Error. Integration Service skips this row
|