将redshift列拆分为多列

时间:2018-12-12 11:56:21

标签: sql amazon-redshift

我在redshift中有一个表,其中包含一些数据聚集

Product_id , options_id
1,           tag1:value1&tag2:value2

相反,我希望显示一个如下所示的视图:

 Product_id , tag1 , tag2
 1 ,           value1 , value 2

有没有办法做到这一点?

我只能在网上找到将其分成多行的人,例如:

https://www.holistics.io/blog/splitting-array-string-into-rows-in-amazon-redshift-or-mysql/

但这不符合我的目的

1 个答案:

答案 0 :(得分:2)

您可以使用split_part

select product_id, 
       split_part(split_part('tag1:value1&tag2:value2', '&', 1), ':', 1) as tag1, 
       split_part(split_part('tag1:value1&tag2:value2', '&', 2), ':', 1) as tag2
from the_table