2016-10-15 6 views
0

異なる列にある値に基づいて、テーブルの列に存在する値を整理する必要があります。1列の値に基づいて1行に2行を移動する方法

--------------------------------------------- 
Col1.   |  Col 2.    | 
Bokaro   Sector 9 
Dhanbad.  Sector 29 
Bokaro   Sector 11 
Dhanbad   Sector 30 
Ranchi.   Sector 50 

例えば

私は、これはSQLクエリでこれを行う方法を

Col1.     Col2 
--------------------------------------------------------- 
Bokaro.   Sector 9  Sector 11 
Dhanbad.   Sector 29. Sector 30 
Ranchi.    Sector 50 

として表示させたいです。

+0

与えられた 'Col1'値にはいくつの' Col2'値がありますか? –

+3

あなたはどのデータベースを使用していますか? – sstan

+3

mysqlを使用している場合は、 'group_concat'を使用してください。他のデータベースも同様の方法をサポートしています。 – sgeddes

答えて

0

SQLサーバーを使用している場合は、STUFF機能を使用してください。

SELECT y1.Col1 
    ,STUFF((SELECT ' ' + y2.Col2 [text()] 
    FROM YourTable y2 
    WHERE y1.col1 =y2.col1 
    FOR XML PATH(''), TYPE) 
    .value('.','NVARCHAR(MAX)'),1,2,' ') [Col2] 
FROM YourTable y1 
GROUP BY y1.col1 
関連する問題