create procedure p_sel @bh varchar(30) --如果你的编号为字符型的字段的话,用这个过程
as
begin
declare @count int,@sql varchar(8000)
select @count=count(*) from wllxxn
select @sql='select top '+cast(@count as varchar(30))+' * from wllxxn
exec (@sql)
end
题主的意思应该是在查询结果为int型数据后面,加上%号,比如查询及格率的时候。
提供一种方法,可以用cast函数将int型数据转换为varchar型,然后再加上%就OK了。
模板是:cast(int型数据 as varchar)+ '%'
举个例子:
比如我想查询数据库的及格率(按照百分比输出):
CAST(round(100*sum(case when c.cname='数据库' and s.score>=60 then 1 else 0 end)/SUM(case when c.cname='数据库' then 1 else 0 end),0) as varchar) +'%' as 及格率
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)