2017-12-06 9 views
0

次の列のコードの組み合わせを持つIDの一覧を取得するために、IDが列1に、コードが列2にあります。データの例を以下に見つけることができます:SQLピボット:1つのセルに連結された1つの列の内容を結合する

ID Code 
211 901 
211 902 
211 903 
208 605 
208 606 

私が欲しい結果は1列目のコードの組み合わせで、次のようになります。

ID  Code_Combo 
211 901/902/903 
208 605/606 

任意のアイデア?かなりここで失われた。

答えて

2

次に、値を使用する例を示します。私はこのpostの最初の答えに記載されているXML PATHの例を使用しました。

CREATE TABLE #Test (ID int, Code int) 

INSERT INTO #Test (ID, Code) VALUES 
(211, 901), 
(211, 902), 
(211, 903), 
(208, 605), 
(208, 606) 

SELECT 
    ID, 
    SUBSTRING(Codes, 2, LEN(Codes)) AS 'Codes' 
FROM 
    (
     SELECT DISTINCT ID, 
      (
       SELECT '/' + CAST(Code AS varchar(10)) 
       FROM #Test AS MTI 
       WHERE MTI.ID = MTO.ID 
       ORDER BY MTI.ID 
       FOR XML PATH ('') 
      ) Codes 
     FROM #Test AS MTO 
    ) AS Final 

DROP TABLE #Test 
関連する問題