横向不舒服-ing给我带来了一些问题。
我有一张桌子 看起来像:
Name | Info
------|------
A | Info1, Info2, Info3
B | Info1, Info 2, Info3
我希望它看起来像是:
Name | Info
------|------
A | Info1
A | Info2
A | Info3
B | Info1
B | Info2
B | Info3
那里还有更多列。我都想保留它们。 有任何想法吗?
答案 0 :(得分:3)
如果您想使用unnest()
:
select t.name, trim(i) as info
from t cross join lateral
unnest(string_to_array(t.info, ',')) i;
您无需使用unnest()
,因为您可以直接拆分为数组:
select t.name, trim(i) as info
from t cross join lateral
regexp_split_to_table(t.info, ',') i;