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 に答える