SET QUOTED_IDENTIFIER OFF create table #tmp (a int,b int,c varchar(10)) create table #res (a int,b int,c varchar(10),d int) insert into #tmp values(3,8,'a+b') insert into #tmp values(2,6,'a*b') insert into #tmp values(4,9,'a+b') insert into #tmp values(11,2,'a-b') insert into #tmp values(33,2,'a*b') declare @str varchar(100) declare @ab varchar(100) declare cur1 cursor for select c from #tmp group by c open cur1 fetch next from cur1 into @ab while @@fetch_status=0 begin set @str='insert into #res select a,b,c,' +@ab+" as d from #tmp where c='" + @ab +"'" exec (@str) fetch next from cur1 into @ab end select * from #res deallocate cur1 drop table #res drop table #tmp SET QUOTED_IDENTIFIER ON
create table #tmp (a int,b int,c varchar(10))
create table #res (a int,b int,c varchar(10),d int)
insert into #tmp values(3,8,'a+b')
insert into #tmp values(2,6,'a*b')
insert into #tmp values(4,9,'a+b')
insert into #tmp values(11,2,'a-b')
insert into #tmp values(33,2,'a*b')
declare @str varchar(100)
declare @ab varchar(100)
declare cur1 cursor for select c from #tmp group by c
open cur1
fetch next from cur1 into @ab
while @@fetch_status=0
begin
set @str='insert into #res select a,b,c,' +@ab+" as d from #tmp where c='" + @ab +"'"
exec (@str)
fetch next from cur1 into @ab
end
select * from #res
deallocate cur1
drop table #res
drop table #tmp
SET QUOTED_IDENTIFIER ON