linux如何将百分比转换为数字,Linux_sql 自定义百分比转换小数函数代码,复制代码 代码如下: --CAST 和 CO - phpStudy...

sql 自定义百分比转换小数函数代码

复制代码 代码如下:

--CAST 和 CONVERT 函数 Percentage

DECLARE @dec decimal(5,3), @var varchar(10),@hun decimal(5,1)

set @dec=0.025

set @hun=@dec*100

set @var=cast(@hun as varchar(20))+'%'

select @var

---小数转化为百分数函数 GetPercentageString

---涂聚文 Geovin Du

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[GetPercentageString]') and xtype in (N'FN', N'IF', N'TF'))

drop function [dbo].[GetPercentageString]

GO

CREATE function GetPercentageString

(

@dec decimal(10,3)

)

returns varchar(20)

AS

BEGIN

DECLARE @var varchar(10),@hun decimal(10,1)

SET @hun=@dec*100

SET @var=cast(@hun as varchar(20))+'%'

RETURN @var

END

GO

--测试数据 涂聚文 Geovin Du

SELECT [dbo].[GetPercentageString] (0.05)

SELECT [dbo].[GetPercentageString] (0.25)

SELECT [dbo].[GetPercentageString] (1.25)

--1. 查询字符串中是否包含非数字字符

SELECT PATINDEX('%[^0-9]%', '1235X461')

SELECT PATINDEX('%[^0-9]%', '12350461')

--2. 查询字符串中是否包含数字字符

SELECT PATINDEX('%[0-9]%', 'SUYLLGoO')

SELECT PATINDEX('%[0-9]%', 'SUYLLG0O')

DECLARE @dec decimal(10,4), @var varchar(10),@hun decimal(10,4),@I INT,@K INT,@S VARCHAR(20)

SET @var='5.23%'

--SELECT @K=LEN(@var)

--SELECT @S=LEFT(@var,@K-1)

SELECT @S=RIGHT(@var,1)

--SELECT @S

SELECT @I=CHARINDEX('%',@S)

IF @I>0

BEGIN

SET @var=REPLACE(@var,'%','')

SET @hun=CAST(@var AS decimal(10,4))

SET @dec=@hun/100

SELECT @dec

END

ELSE

BEGIN

SELECT @dec=NULL --'无效数据'

END

--百分数转化为小数函数 GetPercentageNumber

---涂聚文 Geovin Du

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[GetPercentageNumber]') and xtype in (N'FN', N'IF', N'TF'))

drop function [dbo].[GetPercentageNumber]

GO

CREATE function GetPercentageNumber

(

@var varchar(10)

)

returns decimal(10,4)

AS

BEGIN

DECLARE @dec decimal(10,4), @hun decimal(10,4),@I INT,@K INT,@S VARCHAR(20)

SELECT @S=RIGHT(@var,1)

--SELECT @S

SELECT @I=CHARINDEX('%',@S)

IF @I>0

BEGIN

SET @var=REPLACE(@var,'%','')

SET @hun=CAST(@var AS decimal(10,4))

SET @dec=@hun/100

--SELECT @dec

END

ELSE

BEGIN

SELECT @dec=NULL --'无效数据'

END

RETURN @dec

END

GO

--测试数据 涂聚文 Geovin Du

SELECT [dbo].[GetPercentageNumber] ('5.23%')

SELECT [dbo].[GetPercentageNumber] ('%0.23')相关阅读:

不用光盘直接硬盘安装Windows 2008系统方法

Oracle数据仓库的体系结构

AJAX实践DWR篇

Install and Manage MySQL

做个自己站内搜索引擎

如何在Oracle表中插入系统时间

dedecms实现AJAX无刷新评论制作详解

一个查看局域网在线IP的vbs脚本

ASP.NET(C#)

创建Linux之USB启动盘

Joomla教程:为“read more”链接添加对应的文章标题

网站设计Tab标签切换的效果制作

常被人们忽略的几种Linux系统下编程语言

asp 删除数据库记录的代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值