如何在存贮过程中,将一个表的某字段全部记录,依次保存在一个变量中,通过output参数返回?
如何在存贮过程中,将一个表的某字段全部记录,依次保存在一个变量中,通过output参数返回? 
 ----------------------- 
 我在写一个校验程序的存贮过程,在校验时得到一个表,我不想将这个表传到客户端,只想通过output参数将这个表的某字段信息传回来,如何做? 
 比如得到这样一个表: 
 字段名是班组号,值如下 
 12 
 45 
 23 
 78 
 共有4条记录,我想把这四个值拼到一个字符串中,使字符串成为: 
 12452378,然后通过output参数返回这个字符串。 
 关键是如何将表的值放到字符串中,先谢了。   
------解决方案--------------------create table T(col int) 
 insert T select 12 
 insert T select 45 
 insert T select 23 
 insert T select 78 
 go   
 create proc pc 
 @outChar varchar(1000) output 
 as   
 select @outChar=@outChar+rtrim(col) from T 
 go     
 declare @outChar varchar(1000) 
 set @outChar= ' ' 
 exec pc @outChar output 
 select @outChar
------解决方案--------------------declare @a varchar(100) 
 set @a= ' ' 
 select @a=@a+ltrim([班组号]) from [这样一个表] 
 select @a
------解决方案--------------------  --建立測試環境 
 Create Table TEST 
 (班组号	Int) 
 --插入數據 
 Insert TEST Select 12 
 Union All Select 45 
 Union All Select 23 
 Union All Select 78 
 GO 
 --建立存儲過程 
 Create Procedure SP_TEST(@S Varchar(1000) Output) 
 As 
 Begin 
 	Select @S =  ' '  
 	Select @S = @S + Rtrim(班组号) From TEST 
 End 
 GO 
 --測試 
 Declare @S Varchar(1000) 
 EXEC SP_TEST @S Output 
 Select @S 
 GO 
 --刪除測試環境 
 Drop Table TEST 
 Drop Procedure SP_TEST 
 GO 
 --結果 
 /* 
 12452378 
 */ 
------解决方案--------------------如何将表的值放到字符串   
 try: 
 DECLARE @Str nvarchar(100) 
 SET @Str= ' ' 
 SELECT @Str=@Str+CAST(字段名 AS nvarchar(20)) FROM 表名 WHERE .... 
 PRINT @Str 
------解决方案--------------------create proc a @b varchar(20),@a varchar(8000) output as 
 set @a= ' ' 
 select @a=@a+ @b from 表 
 go   
 declare @c varchar(8000) 
 exec a 字段,@c output 
 select @c
------解决方案--------------------create database mytest 
 go   
 use mytest 
 create table YourTableName 
 ( 
 	ClassGroupID int  
 )   
 insert YourTableName  
 select 14 
 union all select 25 
 union all select 23 
 union all select 78   
 select * from YourTableName     
 alter procedure getFormatData @outputParam varchar(8000) output 
 as 
 begin 
 	set @outputParam =  ' ' 
 	select @outputParam = @outputParam + convert(varchar(200),ClassGroupID) from YourTableName 
 end   
 -- 
 declare @result varchar(8000) 
 exec getFormatData @result output 
 print @result