将列值拆分为行DB2

时间:2017-12-04 10:40:48

标签: sql db2

我使用DB2 db来获取数据。我有想要从数据库中获取值的场景,如下所示:

user                 attributes 
------               ------------             
user1                Name=Rahul|Branch=CSE|Year of Joining=2017 

输出:

Name            Branch        Year of Joining  
-----           ------        ----------------
Rahul           CSE           2017

我需要得到"属性"的分裂列。如下所示。

window.onload

我们可以在查询中实现此目的吗?请指导我。

1 个答案:

答案 0 :(得分:0)

DB @支持regexp_substr()。这允许你这样做:

select regexp_substr(regexp_substr(attributes, '[^|]+', 1, 1), '[^=]+$', 1, 2) as name,
       regexp_substr(regexp_substr(attributes, '[^|]+', 1, 2), '[^=]+$', 1, 2) as branch,
       regexp_substr(regexp_substr(attributes, '[^|]+', 1, 3), '[^=]+$', 1, 2) as name
from t;