1

我的要求是这样的。我有 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

任何的想法?

4

1 回答 1

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
于 2012-08-23T13:45:44.363 回答