【发布时间】:2014-10-08 12:34:22
【问题描述】:
我在关系数据库的源表中有一个列 (SALARY), 例如 15000 是 SALARY 列中的记录 我想将其格式化为 $15,000.00 到作为关系数据库的目标表中 使用表达式转换。
谢谢你, 阿杰
【问题讨论】:
-
为什么要这么做?为什么不将数值存储在数据库中,然后在表示层中正确格式化?
标签: etl informatica informatica-powercenter
我在关系数据库的源表中有一个列 (SALARY), 例如 15000 是 SALARY 列中的记录 我想将其格式化为 $15,000.00 到作为关系数据库的目标表中 使用表达式转换。
谢谢你, 阿杰
【问题讨论】:
标签: etl informatica informatica-powercenter
这可以通过以下步骤完成:
将所需的列从源拉到表达式转换。
通过使用公式CONCAT('$',Source_Column)
将此新列加载到目标,而不是源中的列。
我希望这只是为了学习功能。在现实生活场景中,这是一种不好的做法。我们不需要将这些符号和所有符号都保存在表格中。这可以在报告级别直接处理。
【讨论】:
可能是工资列在同一张表中具有不同类型的工资的情况,例如“dollor”、“euro”、“pounds”等。 我仍然同意 Thomas Cherian 的观点,即用数据本身存储符号并不是一个好习惯。
如果是这种情况,你可以做两件事。
--1.) 在表中添加另一列并将类型的值存储在那里或添加另一列也存储转换率。
--2.) 将所有值转换为一次货币并在没有符号的情况下存储它。
【讨论】: