Function odi11g中的Regexp函数

Function odi11g中的Regexp函数,function,oracle-data-integrator,regexp-substr,Function,Oracle Data Integrator,Regexp Substr,我有一个表中的数据作为 ID Service Amount 1 Mpesa,Credit,topup,App 2000 2 Credit,topup,App 1000 3 Topup,App 500 我需要输出为 ID Service Amount 1 Mpesa 2000 1 Credit 2000 1 topup 2000 1 App 2000 2 Credit

我有一个表中的数据作为

ID  Service                 Amount
1   Mpesa,Credit,topup,App  2000
2   Credit,topup,App        1000
3   Topup,App               500
我需要输出为

ID  Service Amount
1   Mpesa   2000
1   Credit  2000
1   topup   2000
1   App     2000
2   Credit  1000
2   topup   1000
2   App     1000
3   Topup   500
3   App     500
这将在ODI 11g中实现,请帮助我继续处理此案例。 RegEXp函数将完成所需的工作,但需要了解RegEXp函数如何在ODI 11g中实现

谢谢,
Gowtham Raja S

您试图解决的问题是“将分隔列拆分为多行”。纯粹的REGEXP\u SUBSTR是不够的。上描述了非常类似的任务

从ODI本地实现这一点很困难。ODI最简单的方法是创建一个视图(见上面的链接),然后实现映射

UPD:
另外,请查看

使用此查询,您可以实现您想要的:

SELECT SUBSTR(columnname, 1, INSTR(columnname,',') - 1) FROM tablename;
因此,您可以在映射列中使用substr:

SUBSTR(服务,1,仪表(服务,,)-1


在ODI 11g中,还有另一种应用regexp_substr和窗口功能的方法,但这需要自定义编辑的知识模块,因此这是一种解决方法,在这种情况下可以完成此工作

我甚至可以根据请求添加更多详细信息,请期待解决此问题的方法。如果你能写下你是如何在regexp中实现的,我可以帮助ODI的实现。在最坏的情况下,您可以使用ODI过程。感谢您的回复#Canburak,如果您能分享任何满足我在ODI实现中使用REGEXP#u子字符串需要的示例过程,我将非常高兴。感谢您提供各种信息/帮助以解决我的需求。。