我有数据类型字符串的源列(数量),包含数据,如$ 793.00,$ 5791.00,...
我需要将相同的数据加载到数据类型为NUMBER
的目标表列(金额)中如何通过在informatica中使用表达式转换来获取目标中带有“$”符号的相同数据?
任何人都应该帮助我,提前谢谢。
答案 0 :(得分:3)
TO_NUMBER(SUBSTR(AMOUNT,INSTR(AMOUNT, '$')+ 1,LENGTH(AMOUNT)-1))
或者如果它始终是第一个角色而你不必担心空格
TO_NUMBER(SUBSTR(AMOUNT,2,LENGTH(AMOUNT)-1))
答案 1 :(得分:1)
您可以将源列“amount”放入一个表达式元素中,例如“AMOUNT_INPUT”,并在该表达式中添加一个新项目,使“AMOUNT_OUTPUT”在此表达式为“ TO_NUMBER(AMOUNT_INPUT)“强>
答案 2 :(得分:1)
某些版本的Informatica不支持TO_NUMBER()
。如果您使用的版本就是这种情况,则需要根据您的使用情况使用以下其中一种:
TO_INTEGER()
TO_FLOAT()
TO_DECIMAL()
有关使用详情,请参阅reference of Informatica functions。
答案 3 :(得分:0)
您还可以使用以下逻辑来获得所需的结果 - 项replacestr(1,数量, '$', '')