Sql Server Some Question --Case...Whne...(2)

----问题----
/*
在SQL server中,表为:
create table tt1
(
id int identity(1,1),
T_key varchar(10),
T_value varchar(10),
T_remark varchar(20)
)
go
insert tt1 values('key1','value1','remark1')
insert tt1 values('key2','value2','remark2')
insert tt1 values('key3','value3','remark3')
go
要得到这样的结果:
字段: key1, key2, key3
——————————————————
字段值:value1,value2,value3
*/

----解决方案-----

declare
@a table
(
id int identity(1,1),
T_key varchar(10),
T_value varchar(10),
T_remark varchar(20)
)

insert into @a select 'key1','value1','remark1'
union all select 'key2','value2','remark2'
union all select 'key3','value3','remark3'
select * from @a
select [字段:]='字段值:',max(case when t_key='key1' then t_value else '' end)as key1,
max(case when t_key='key2' then t_value else '' end)as key2,
max(case when t_key='key3' then t_value else '' end)as key3
from @a

 

posted on 2007-03-17 10:12  封起De日子  阅读(105)  评论(0编辑  收藏  举报

导航