怎么样将表里的字段和值转为记录
如下表
ID 北京 天津 广东
1 A B C
2 D E F
转成如下表
ID 地域 值
1 北京 A
1 天津 B
1 广东 C
2 北京 D
2 天津 E
2 广东 F
新手入场,请多关照。
[解决办法]
select id,'北京' as 地域, 北京 from ta
union all
select id,'天津' as 地域, 天津 from ta
union all
select id,'广东' as 地域, 广东 from ta
[解决办法]
if object_id('[TB]') is not null drop table [TB]gocreate table [TB] (ID int,北京 nvarchar(2),天津 nvarchar(2),广东 nvarchar(2))insert into [TB]select 1,'A','B','C' union allselect 2,'D','E','F'select * from [TB]select ID ,area,numberfrom (select ID,北京 ,天津,广东 from TB)Punpivot(number for area in (北京 ,天津,广东 )) as unpvt;/*1 北京 A1 天津 B1 广东 C2 北京 D2 天津 E2 广东 F*/