while(条件)
begin
select sum(a1), avg(a2) from table1 where...
end-----------
你这样执行,如果是外部程序调用的话,可以返回多个结果集
若你要把所有结果集放在一起当一个结果集输出的话,那必须把每次循环的结果集放到一个临时表或表变量里才行~~等这个循环执行完后,然后select临时表或表变量返回一个结果集
begin
select sum(a1), avg(a2) from table1 where...
end-----------
你这样执行,如果是外部程序调用的话,可以返回多个结果集
若你要把所有结果集放在一起当一个结果集输出的话,那必须把每次循环的结果集放到一个临时表或表变量里才行~~等这个循环执行完后,然后select临时表或表变量返回一个结果集
局部临时表 (#表名),不要用全局临时表,这样的话,若别人也刚好创建了这个临时表,则会报错,因为全局临时表一次只能存在一个 (##表名)其实你用表变量(是把数据存放在内存里)的话,那更好 :declare @test table (total1 int,total2 int)
while(条件)
begin
insert into @t select sum(a1), avg(a2) from table1 where...
end
select * from @t
select * into #table1 from bmlbselect * from #table1
#table1表的列就会自动变的啊。
临时表,表变量都要指定列和类型,也可以不指定吗?
select * into #table1 from bmlb where (每次条件不一样)这样的循环后
#table1是多条记录吗?是否是循环的次数的记录数, #table可以不定义列和数据类型吗。