日期:2014-05-17  浏览次数:20488 次

请教一个函数问题
我想让列里面的数字1、2、3,显示出来是100%,200%,300%,请问怎么用函数实现,谢谢了。

------解决方案--------------------


create function GetF(@a int)
returns nvarchar(10)
as
begin
return convert(nvarchar(10),@a*100)+'%'
end


--
select dbo.GetF(1)

------解决方案--------------------
CREATE FUNCTION dbo.F_percent(@a int)
RETURNs varchar(100)
AS
begin 
DECLARE @b VARCHAR(100)
 select @b = CONVERT(VARCHAR,@a*100) +'%'
 RETURN @b;
END 

SELECT dbo.f_percent(2)

------解决方案--------------------
select convert(nvarchar(10),id*100)+'%' as v from tab

------解决方案--------------------
引用:
Quote: 引用:

CREATE FUNCTION dbo.F_percent(@a int)
RETURNs varchar(100)
AS
begin 
DECLARE @b VARCHAR(100)
 select @b = CONVERT(VARCHAR,@a*100) +'%'
 RETURN @b;
END 

SELECT dbo.f_percent(2)

不写成函数,语句里面能不能直接实现呀


这个其实在前台显示的时候做些处理即可。 

如果非要sql语句的话,就是楼上的样式了。
------解决方案--------------------
上面的楼主写的函数都是可以的啊,如果用语句的话,估计还要判定一下,是否是数字,否则4楼写的那种*100的可能报错。