gpt4 book ai didi

MySql 查询将包含定界符的列转换为行

转载 作者:行者123 更新时间:2023-11-29 21:29:55 25 4
gpt4 key购买 nike

基本上我需要编写一个查询来选择下表

UID | Col A | Col B
123 x;y;z v;b

转换为以下要求格式。

123 , Col A, X
123 , Col A, y
123 , Col A, z
123 , Col B, v
123 , Col B, b

非常感谢任何建议。

最佳答案

这很痛苦,但这里有一个方法:

select uid, 'Col A' as col,
substring_index(substring_index(colA, ';', n.n), ';', -1) as val,
from t cross join
(select 1 as n union all select 2 union all select 3
) n
on (length(replace(colA, ';', '; ')) - length(colA)) <= n.n + 1
union all
select uid, 'Col B' as col,
substring_index(substring_index(colB, ';', n.n), ';', -1) as val,
from t cross join
(select 1 as n union all select 2 union all select 3
) n
on (length(replace(colB, ';', '; ')) - length(colB)) <= n.n + 1;

关于MySql 查询将包含定界符的列转换为行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35339716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com