相关疑难解决方法(0)

从同一个表中的逗号分隔列更新行列

我有以下表定义

CREATE TABLE _Table 
(
    [Pat] NVARCHAR(8), 
    [Codes] NVARCHAR(50), 
    [C1] NVARCHAR(6), 
    [C2] NVARCHAR(6), 
    [C3] NVARCHAR(6), 
    [C4] NVARCHAR(6), 
    [C5] NVARCHAR(6)
);
GO

INSERT INTO _Table ([Pat], [Codes], [C1], [C2], [C3], [C4], [C5])
VALUES
    ('Pat1', 'U212,Y973,Y982', null, null, null, null, null),
    ('Pat2', 'M653', null, null, null, null, null), 
    ('Pat3', 'U212,Y973,Y983,Z924,Z926', null, null, null, null, null);
GO  
Run Code Online (Sandbox Code Playgroud)

SQL小提琴在这里.

现在,我想分割每行的代码并填充Cn列,以便最终得到

Pat     Codes                       C1      C2      C3      C4      C5
Pat1    'U212,Y973,Y982'            U212    Y973    Y982    NULL    NULL
Pat2    'M653'                      M653    NULL    NULL    NULL    NULL …
Run Code Online (Sandbox Code Playgroud)

sql t-sql common-table-expression sql-server-2012

6
推荐指数
1
解决办法
179
查看次数

TSQL选择逗号列表到行

如何在一行中输入逗号列表字段并将其显示在列中?

例如,

ID | Colour
------------
1  | 1,2,3,4,5
Run Code Online (Sandbox Code Playgroud)

至:

ID | Colour
------------
1  | 1 
1  | 2
1  | 3
1  | 4
1  | 5
Run Code Online (Sandbox Code Playgroud)

t-sql

5
推荐指数
1
解决办法
9246
查看次数