国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > SQL Server > 正文

阿拉伯?dāng)?shù)字轉(zhuǎn)大寫中文_財(cái)務(wù)常用sql存儲(chǔ)過(guò)程

2024-08-31 00:59:54
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
例:輸入12345,程序給出:壹萬(wàn)貳仟叁佰肆拾伍
例:輸入10023040,程序給出:壹仟另貳萬(wàn)叁仟另肆拾

解決方案之一(在SqlServer2000中測(cè)試通過(guò)):
CREATE FUNCTION fun_cgnum
(@num INT)
RETURNS VARCHAR(100)
AS
BEGIN
DECLARE @temp INT,@res INT,@i TINYINT
DECLARE @str VARCHAR(100),@no VARCHAR(20),@unit VARCHAR(16)
SELECT @str='',@no='另壹貳叁肆伍陸柒捌玖',@unit='拾佰仟萬(wàn)拾佰仟億'
SET @temp=@num
SELECT @i=0,@res=@temp%10,@temp=@temp/10
WHILE @temp>0
BEGIN
IF @i=0
SET @str=SUBSTRING(@no,@res+1,1)
ELSE
SET @str=SUBSTRING(@no,@res+1,1)+SUBSTRING(@unit,@i,1)+@str
SELECT @res=@temp%10,@temp=@temp/10
SET @i=@i+1
END
SET @str=SUBSTRING(@no,@res+1,1)+SUBSTRING(@unit,@i,1)+@str
SET @str=REPLACE(@str,'另拾','另')
SET @str=REPLACE(@str,'另佰','另')
SET @str=REPLACE(@str,'另仟','另')
SET @str=REPLACE(@str,'另拾','另')
SET @str=REPLACE(@str,'另萬(wàn)','萬(wàn)')
WHILE @i>0
BEGIN
SET @str=REPLACE(@str,'另另','另')
SET @i=CHARINDEX('另另',@str)
END
SET @str=REPLACE(@str,'另萬(wàn)','萬(wàn)')
SET @str=REPLACE(@str,'億萬(wàn)','億')
IF RIGHT(@str,1)='另'
SET @str=LEFT(@str,LEN(@str)-1)
RETURN @str
END
GO

--測(cè)試:有0和沒(méi)有0的情況
SELECT dbo.fun_cgnum(900000000),dbo.fun_cgnum(903002051),dbo.fun_cgnum(903002050)

PS:有興趣的朋友可以繼續(xù)考慮有小數(shù)點(diǎn)以及添加單位(元/角/分)的情況
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 长武县| 栾川县| 辉县市| 吉林市| 大洼县| 梓潼县| 庆元县| 碌曲县| 神农架林区| 易门县| 肇州县| 襄樊市| 泰和县| 苍南县| 潢川县| 于都县| 庆元县| 永胜县| 宝丰县| 浑源县| 武陟县| 肥西县| 磐安县| 华坪县| 舟山市| 曲周县| 秦安县| 包头市| 吉水县| 修文县| 青河县| 桐乡市| 嘉荫县| 余姚市| 崇礼县| 南投市| 翁牛特旗| 会昌县| 太湖县| 绥芬河市| 庆安县|