我的要求就像。我有3列& 1排。
Column A -> Value a
Column B -> Value b
Column C -> Value 123
我必须在C列中拆分值并从中获取3行,并且还要复制其他列中的值。我必须得到3行,它应该是:
Column A -> Value a , a , a
Column B -> Value b , b , b
Column C -> Value 1, 2, 3
任何想法?
答案 0 :(得分:6)
试试这个:
create table test(cola varchar(10),colb varchar(10),colc varchar(10))
insert into test select 'a','b','123'
;WITH CTE AS(
select cola,colb,LEFT(colc,1) colc,RIGHT(colc,len(colc)-1) as rem from test
union all
select cola,colb,LEFT(rem,1) colc,RIGHT(rem,len(rem)-1) as rem from CTE
where LEN(rem) >= 1
)
select cola,colb,colc from CTE