DECLARE @maxinumValue DECIMAL(18,5) --控制的值
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位select substring(cast(@maxinumValue as varchar(20)),1, patindex('%.%',cast(@maxinumValue as varchar(20)))+2) + @unitFormat----------------------------------------------------------------------
19.80%(1 行受影响)
解决方案 »
- 自增长列异常
- 【T-MAC个人学习笔记13之--游标薄见】
- 【SQL编程游戏】编写一个会划拳的机器人参加擂台赛,规则内详。路过有分。
- 三维数据统计
- 假设有两张表。主要实现将对应的数据加载到另一张表中。
- sql如何对时间进行比较,计算出在线人数
- 怎么解决
- sql server 2005 如何安装 Reporting Services 报表服务?
- sql2000,用的混合密码验证,可是windows密码我改后就启动不了
- 各位大侠,请问如何将 数据库 数据 放进javascript 里面的数组,求求你们帮帮小弟,已经有几个晚上都没有睡好觉了!!
- 对自己实在无语,简单的一个union all问题
- 问个问题>>>>>>>马上结帖
DECLARE @maxinumValue DECIMAL(18,5) --控制的值
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位declare @sql varchar(1000)
set @sql='SELECT ltrim(CAST('+CAST(@maxinumValue AS VARCHAR)+' AS DECIMAL(18,'+CAST(@scale AS VARCHAR)+')))+''%'' AS result'
exec (@sql)/*
result
19.80%
*/
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位select @result=substring(cast(round(@maxinumValue,@scale) as varchar(100)),1,CHARINDEX('.',@maxinumValue,1)+2)+@unitFormat
print(@result)
--结果如下
19.80%
修改了下
DECLARE @maxinumValue DECIMAL(18,5) --控制的值
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位select @result=substring(cast(round(@maxinumValue,@scale) as varchar(100)),1,CHARINDEX('.',@maxinumValue,1)+@scale)+@unitFormat
print(@result)
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位select @result = stuff(cast(@maxinumValue as varchar),charindex('.',cast(@maxinumValue as varchar))+3,len(100),'')+'%'
select @result
/*
19.80%
*/
DECLARE @maxinumValue DECIMAL(18,5) --控制的值
DECLARE @unitFormat VARCHAR(50) --单位
DECLARE @scale INT --小数位
DECLARE @result VARCHAR(100) --结果值SET @maxinumValue = 19.80000 --控制的值
SET @unitFormat = '%' --单位
SET @scale = 2 --小数位
--
SELECT ltrim(cast(@maxinumValue AS DECIMAL(18,2)))+@unitFormat