请看SQL:
本人的意思是:从依次读取一张表里记录,从中提取部门ID与部门名称依次赋值给2个变量@Pno与@PName,然后整合成一条新的SQL语句赋给字符串变量@sqlText,结果@sqlText的值只有300个字符不到,而我表里的记录有9条左右,正常结果是500个字符左右,请教高手们这字符数为什么就只有300左右就上不去了?谢谢!!
declare @sqlText varchar(2000)
declare @Pno Varchar(2),@PName Varchar(10)
declare YYMX cursor for select PrinterNo,Description from MaPrinter
set @sqlText='select NoOfPeople as 人数,RetailNo as 单号,'
open YYMX
FETCH NEXT FROM YYMX into @Pno,@PName
while(@@fetch_status =0 )
begin
set @sqlText=@sqltext +'sum(case PrinterNo when '''+@Pno+''' then Amount else 0 end) as '''+@PName+''','
FETCH NEXT FROM YYMX into @Pno,@PName
end
close YYMX
deallocate YYMX
select @sqlText
本人的意思是:从依次读取一张表里记录,从中提取部门ID与部门名称依次赋值给2个变量@Pno与@PName,然后整合成一条新的SQL语句赋给字符串变量@sqlText,结果@sqlText的值只有300个字符不到,而我表里的记录有9条左右,正常结果是500个字符左右,请教高手们这字符数为什么就只有300左右就上不去了?谢谢!!
declare @sqlText varchar(2000)
declare @Pno Varchar(2),@PName Varchar(10)
declare YYMX cursor for select PrinterNo,Description from MaPrinter
set @sqlText='select NoOfPeople as 人数,RetailNo as 单号,'
open YYMX
FETCH NEXT FROM YYMX into @Pno,@PName
while(@@fetch_status =0 )
begin
set @sqlText=@sqltext +'sum(case PrinterNo when '''+@Pno+''' then Amount else 0 end) as '''+@PName+''','
FETCH NEXT FROM YYMX into @Pno,@PName
end
close YYMX
deallocate YYMX
select @sqlText
解决方案 »
- 两列相除得百分数
- |zyciis| 在SQL中能不能实现像.NET中的Timer功能,在给表插入一条数据后三秒再进行判断
- 在线等, 解决给分, 简单问题
- sqlserver中十六进制字符串转二进制存储
- SQL SERVER2005在management studio的“服务器名称”里如何填带端口号的服务器地址?
- 求助sql高手
- dbcc shirnkfile出现的问题 ...在线等
- 安装sql7.0出问题,win2000 pro下安装了sql7.0 desktop,不能完成,高分求助
- SQL语句的用法,高手看过来
- 高分请教SQL SERVER7.0高手
- 请问什么是数据库缓存的拉数据缓存和推数据缓存?
- sql水平一般 如何提高
显示的问题
具体参考1楼
declare @sqlText varchar(8000)
declare @Pno Varchar(2),@PName Varchar(10)
set @sqlText='select NoOfPeople as 人数,RetailNo as 单号,'
declare YYMX cursor for select PrinterNo,Description from MaPrinter
open YYMX
FETCH NEXT FROM YYMX into @Pno,@PName
while(@@fetch_status =0 )
begin
set @sqlText=@sqltext +'sum(case PrinterNo when '''+@Pno+''' then Amount else 0 end) as '''+@PName+''','
FETCH NEXT FROM YYMX into @Pno,@PName
end
close YYMX
deallocate YYMX
print @sqlText