SQL 字符 数字 转换字母
生活随笔
收集整理的這篇文章主要介紹了
SQL 字符 数字 转换字母
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、將字符中數字轉換為中文大寫的數字,
注意
100==>一零零 ? 而非==>一百
123==>一二三 ? 而非==>一百二十三
CREATE FUNCTION Fn_NumberConvertChinase(@number NVARCHAR(50)) RETURNS NVARCHAR(20) AS BEGIN DECLARE @res NVARCHAR(20) DECLARE @char CHAR(1) SET @res = '' SET @char = substring(@number,1,1) SELECT @res = (CASE @charWHEN '1' THEN '一'WHEN '2' THEN '二'WHEN '3' THEN '三'WHEN '4' THEN '四'WHEN '5' THEN '五'WHEN '6' THEN '六'WHEN '7' THEN '七'WHEN '8' THEN '八'WHEN '9' THEN '九'WHEN '0' THEN '零'ELSE substring(@number,1,1) END ) IF(len(@number) > 1) BEGINSET @res = @res + dbo.fn_numberconvertchinase(substring(@number,2,len(@number)-1)) END RETURN @res END2、獲取字符首字母,并轉大寫
CREATE FUNCTION Fn_GetPy(@str NVARCHAR(4000)) RETURNS NVARCHAR(4000) AS BEGINDECLARE @strlen INT;DECLARE @re NVARCHAR(4000);--字符中數字轉大寫SELECT @str=dbo.fn_numberconvertchinase(@str);DECLARE @t table(chr nchar(1) collate Chinese_PRC_CI_AS,letter nchar(1))INSERT INTO @t(chr,letter)SELECT '吖','A' UNION ALL SELECT '八','B' UNION ALLSELECT '嚓','C' UNION ALL SELECT '咑','D' UNION ALLSELECT '妸','E' UNION ALL SELECT '發','F' UNION ALLSELECT '旮','G' UNION ALL SELECT '鉿','H' UNION ALLSELECT '丌','J' UNION ALL SELECT '咔','K' UNION ALLSELECT '垃','L' UNION ALL SELECT '嘸','M' UNION ALLSELECT '拏','N' UNION ALL SELECT '噢','O' UNION ALLSELECT '妑','P' UNION ALL SELECT '七','Q' UNION ALLSELECT '呥','R' UNION ALL SELECT '仨','S' UNION ALLSELECT '他','T' UNION ALL SELECT '屲','W' UNION ALLSELECT '夕','X' UNION ALL SELECT '丫','Y' UNION ALLSELECT '帀','Z';SELECT @strlen=len(@str),@re='';WHILE @strlen>0BEGINSELECT TOP 1 @re=letter+@re,@strlen=@strlen-1FROM @t a WHERE chr<=substring(@str,@strlen,1)ORDER BY chr DESCIF @@rowcount=0SELECT @re=substring(@str,@strlen,1)+@re,@strlen=@strlen-1ENDRETURN(UPPER(@re)) END?
轉載于:https://www.cnblogs.com/nimeide/p/4632687.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的SQL 字符 数字 转换字母的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 团队第二次冲刺第三天
- 下一篇: Redis学习总结