我有一张这样的桌子:
Name State Amount
------------------------------
Pump 1 Present 339
Pump 1 Optimized 88
我想把它转换成这样的东西:
Pump 1 Present 339 Optimized 88
如何使用 MS SQL 2000 做到这一点?我试图寻找解决方案,但找不到最合适的解决方案。
我有一张这样的桌子:
Name State Amount
------------------------------
Pump 1 Present 339
Pump 1 Optimized 88
我想把它转换成这样的东西:
Pump 1 Present 339 Optimized 88
如何使用 MS SQL 2000 做到这一点?我试图寻找解决方案,但找不到最合适的解决方案。
declare @t table(Name varchar(10), State varchar(10), Amount int)
insert into @t
select 'Pump 1', 'Present', 339 union all
select 'Pump 1', 'Optimized', 88
select name,
max(case when state='Present' then 'Present' end),
max(case when state='Present' then Amount end),
max(case when state='Optimized' then 'Optimized' end),
max(case when state='Optimized' then Amount end)
from @t
group by name