首頁 資料庫 mysql教程 sql 自定义百分比转换小数函数代码

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

Jun 07, 2016 pm 06:02 PM
小數 百分比

sqlserver中自定义百分比转换小数函数,需要的朋友可以参考下。

代码如下:
--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')
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

javascript怎麼將整數轉為小數 javascript怎麼將整數轉為小數 Nov 03, 2021 pm 05:59 PM

在javascript中,可以利用toFixed()函數來將整數轉為小數,該函數能夠把整數轉換為指定小數位數的數字;語法“number.toFixed(x)”,參數“x”規定小數的位數。

如何在Python中將分數轉換為百分比? 如何在Python中將分數轉換為百分比? Aug 25, 2023 pm 01:25 PM

分數和百分比是在金融、數據分析和統計等各個領域中使用的兩個基本數學概念。將分數轉換為百分比是一種簡單但必要的操作,它使我們能夠以更易於理解的方式表示分數值。 Python是最受歡迎的程式語言之一,提供了幾種將分數轉換為百分比的方法,理解這些方法對於在Python中處理資料的人來說至關重要。本文深入探討了在Python中將分數轉換為百分比的過程。我們將探索不同的方法來執行此操作,並提供範例以幫助您理解每種方法。無論您是初學者還是經驗豐富的Python程式設計師,本文都為您提供了在Python中執行此關鍵操作

Python程式取得單字頻率的百分比 Python程式取得單字頻率的百分比 Sep 08, 2023 pm 06:29 PM

在本文中,我們將學習如何在Python中以百分比形式取得詞頻。假設我們已經取得了一個字串輸入清單。現在,我們將找到給定輸入字串清單中每個單字的百分比。公式(OccurrenceofXword/Totalwords)*100使用的方法使用sum()、Counter()、join()和split()函數使用join()、split()和count()函數使用operator模組的countOf()函數。方法一:使用sum()、Counter()、join()、split()函數join()是Py

php怎麼處理小數?多種方法介紹 php怎麼處理小數?多種方法介紹 Mar 28, 2023 pm 03:45 PM

PHP是Web開發中最受歡迎的程式語言之一。在PHP中,小數的處理是非常重要的,因為在實際的程式設計工作中,我們經常需要對小數進行精確運算。本文將介紹幾種處理小數的方法,以便更有效率地進行小數運算。

駕馭PHP BCMath擴展:開啟高精度數學的大門 駕馭PHP BCMath擴展:開啟高精度數學的大門 Feb 23, 2024 am 09:22 AM

PHPBCMath擴充是php標準函式庫中一個強大的工具,它提供了豐富的函數函式庫,能夠處理大數字、小數和分數等複雜的計算。與PHP內建的數學運算子和函數相比,BCMath擴展能夠提供更高的精度和更廣泛的運算範圍,從而滿足各種科學、工程和金融等領域的高精度數學計算需求。為了使用BCMath擴展,您需要在PHP腳本中包含以下程式碼:其中,bcscale()函數用於設定小數點後的位數,預設值為0,表示不保留小數。您可以根據需要調整此值以控制計算精度

linux top指令詳解 linux top指令詳解 Feb 20, 2024 am 09:20 AM

按1可以看每個cpu的使用情況第一行當前時間運行時間當前登陸用戶負載平衡(1分鐘、5分鐘、10分鐘)loadaverage資料每5秒檢查一次活躍進程數,計算出的值。若除以邏輯CPU數量後超過5,表示系統超負荷。第二行總共248個行程1個正在執行247個休眠0個停止0個殭屍行程第三行us(userspace):使用者空間佔用cpu的百分比sy(sysctl):核心空間佔用cpu的百分比ni()—改變過優先權的程序佔用CPU的百分比id(idolt):空閒CPU百分比wa(wait):IO等待佔用CP

如何在 iPhone 上啟用電池百分比顯示? 如何在 iPhone 上啟用電池百分比顯示? May 08, 2023 pm 12:07 PM

如何在iPhone上顯示電池百分比以前,您必須向下滑動才能打開控制中心才能找到剩餘電池電量的確切百分比。但是,在鎖定螢幕的頂部邊緣查看精確電池百分比的選項又回來了。若要在iPhone上顯示電池百分比:從iPhone主畫面開啟「設定」應用程式。向下滑動“設定”選單,然後從清單中點擊“電池”。接下來,將電池百分比按鈕切換到開啟位置。最後,您會在螢幕右上角的電池圖示上方看到準確的剩餘電量百分比。啟用功能後,百分比數字將在您瀏覽鎖定畫面、主畫面和大多數應用程式時顯示。看不到電池百分比?如果您沒有看到打

五分之一的 PC 現在安裝了 Windows 11,但採用率似乎正在放緩 五分之一的 PC 現在安裝了 Windows 11,但採用率似乎正在放緩 Apr 30, 2023 pm 05:10 PM

微軟的Windows11持續成長,如AdDuplex報告中最新的2022年2月資料所顯示的。該作業系統正在迅速接近20%的數位大關,這意味著大約五分之一的PC現在運行Windows11。 Windows11的公用版本,即Windows1121H2,現在為19.3%。同時,內部人員飛行各種預覽版本的比例現在為0.3%。這使Windows11的總份額達到19.6%,到3月,這個百分比份額可能超過20%。 Windows11和許多Wind

See all articles