如何将具有多行的一行中的数据转换为具有多列的一行

时间:2014-11-14 09:18:39

标签: mysql sql sql-server sql-server-2008 sqlite

我正在寻找一种将数据转换为这种格式的有效方法。我想将数据转换为这种格式。请有人帮助我。我正在寻找一种将数据转换为这种格式的有效方法。我想将数据转换为这种格式。请有人帮助我。 这是我的结果:。我在sql中有这样的数据

Jan  Feb  March  Apr  May  Jun  July
1     2     3      1    4   8   9

我正在寻找一种将数据转换为这种格式的有效方法。我想将数据转换为这种格式。请有人帮助我。我正在寻找一种将数据转换为这种格式的有效方法。我想将数据转换为这种格式。请有人帮助我。 这是我的结果:

Month   Count
Jan     1
Feb     2
March   3
Apr     1
May     4
Jun     8   
July    9

我正在寻找一种将数据转换为这种格式的有效方法。我想将数据转换为这种格式。请有人帮助我。 这是我的结果:

2 个答案:

答案 0 :(得分:0)

试试这个,

create table #Table_1
(
   Jan Int,
   Feb Int,
   March Int,
   Apr Int,
   May Int,
   Jun Int,
   July Int
)
insert into #Table_1 values(1,2,3,1,4,8,9)
select * from #Table_1

select [Month], [Count] from #Table_1
Unpivot
(
  [Count] for [Month] in ([Jan],[Feb],[March],[Apr],[May],[Jun],[July])

) as UnPvt

答案 1 :(得分:0)

试试这个:

 $r=mysql_fetch_assoc(mysql_query("select * from your_table limit 1")));
    if($r)foreach($r as $k=>$v){
       $rr= mysql_query("insert into target_table(collumn_name1,collumn_name2) values ('$k','$v')");
    }