通过在datatable中添加下面的列值,将多个列值附加到单个列中

时间:2014-12-02 06:54:37

标签: c# asp.net c#-4.0 datatable merge

我有一个如下所示的数据表,有3列名称,最喜欢的1和2。

Name   Favourite1   Favourite2

xxx     Eating       Cricket
yyy     Books        Music

我的预期输出是

Name   Favourites     

xxx    Eating        
yyy    Books         
xxx    Cricket
yyy    Music

如何制作...... :(

2 个答案:

答案 0 :(得分:1)

在C#中使用此代码。 Merge函数用于合并两个数据表。预期输出将在fav1数据表中。

DataTable fav1;
fav1= ThreeColumntable.Copy();
fav1.Columns.Remove("Favourite2");
fav1.Columns[1].ColumnName = "Favourites";

DataTable fav2;
fav2= ThreeColumntable.Copy();
fav2.Columns.Remove("Favourite1");
fav2.Columns[1].ColumnName = "Favourites";

fav1.Merge(fav2);

答案 1 :(得分:0)

试试这个:

select Name, unpvt.Favourites  from 
(select * from @tbl) tbl
unpivot (Favourites For fields in (Favorite1, Favorite2)) as unpvt

@tbl - 是你的桌子。