最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

SQLServer字段提取拼音首字母

来源:懂视网 责编:小采 时间:2020-11-09 15:51:09
文档

SQLServer字段提取拼音首字母

SQLServer字段提取拼音首字母:目前工作中遇到一个情况,需要将SQL Server中的一个 字段 提取 拼音 的首 字母 , 字段 由汉字、英文、数字以及-构成,百度了一堆,找到如下方法,记录一下,以备后用! 首先建立一个函数 -- 生成 拼音 首码 CREATE function fn_GetPy( @s
推荐度:
导读SQLServer字段提取拼音首字母:目前工作中遇到一个情况,需要将SQL Server中的一个 字段 提取 拼音 的首 字母 , 字段 由汉字、英文、数字以及-构成,百度了一堆,找到如下方法,记录一下,以备后用! 首先建立一个函数 -- 生成 拼音 首码 CREATE function fn_GetPy( @s

目前工作中遇到一个情况,需要将SQL Server中的一个 字段 提取 拼音 的首 字母 , 字段 由汉字、英文、数字以及-构成,百度了一堆,找到如下方法,记录一下,以备后用! 首先建立一个函数 -- 生成 拼音 首码 CREATE function fn_GetPy( @str nvarchar ( 4000

目前工作中遇到一个情况,需要将SQL Server中的一个字段提取拼音的首字母,字段由汉字、英文、数字以及“-”构成,百度了一堆,找到如下方法,记录一下,以备后用!

  首先建立一个函数

--生成拼音首码 
 CREATE function fn_GetPy(@str nvarchar(4000)) 
 returns nvarchar(4000) 
 --WITH ENCRYPTION 
 as 
 begin 
 declare @intLen int 
 declare @strRet nvarchar(4000) 
 declare @temp nvarchar(100) 
 set @intLen = len(@str) 
 set @strRet = '' 
 while @intLen > 0 
 begin 
 set @temp = '' 
 select @temp = case 
 when substring(@str,@intLen,1) >= '帀' then 'Z' 
 when substring(@str,@intLen,1) >= '丫' then 'Y' 
 when substring(@str,@intLen,1) >= '夕' then 'X' 
 when substring(@str,@intLen,1) >= '屲' then 'W' 
 when substring(@str,@intLen,1) >= '他' then 'T' 
 when substring(@str,@intLen,1) >= '仨' then 'S' 
 when substring(@str,@intLen,1) >= '呥' then 'R' 
 when substring(@str,@intLen,1) >= '七' then 'Q' 
 when substring(@str,@intLen,1) >= '妑' then 'P' 
 when substring(@str,@intLen,1) >= '噢' then 'O' 
 when substring(@str,@intLen,1) >= '拏' then 'N' 
 when substring(@str,@intLen,1) >= '嘸' then 'M' 
 when substring(@str,@intLen,1) >= '垃' then 'L' 
 when substring(@str,@intLen,1) >= '咔' then 'K' 
 when substring(@str,@intLen,1) >= '丌' then 'J' 
 when substring(@str,@intLen,1) >= '铪' then 'H' 
 when substring(@str,@intLen,1) >= '旮' then 'G' 
 when substring(@str,@intLen,1) >= '发' then 'F' 
 when substring(@str,@intLen,1) >= '妸' then 'E' 
 when substring(@str,@intLen,1) >= '咑' then 'D' 
 when substring(@str,@intLen,1) >= '嚓' then 'C' 
 when substring(@str,@intLen,1) >= '八' then 'B' 
 when substring(@str,@intLen,1) >= '吖' then 'A' 
 else rtrim(ltrim(substring(@str,@intLen,1))) 
 end 
 --对于汉字特殊字符,不生成拼音码 
 if (ascii(@temp)>127) set @temp = '' 
 --对于英文中小括号,不生成拼音码 
 if @temp = '(' or @temp = ')' set @temp = '' 
 select @strRet = @temp + @strRet 
 set @intLen = @intLen - 1 
 end 
 return lower(@strRet) 
 end 

执行语句

SELECT 需转换中文字段, dbo.fn_GetPy(中文字段) AS 列别名
FROM 表名称

感谢:Luckeryin

文档

SQLServer字段提取拼音首字母

SQLServer字段提取拼音首字母:目前工作中遇到一个情况,需要将SQL Server中的一个 字段 提取 拼音 的首 字母 , 字段 由汉字、英文、数字以及-构成,百度了一堆,找到如下方法,记录一下,以备后用! 首先建立一个函数 -- 生成 拼音 首码 CREATE function fn_GetPy( @s
推荐度:
标签: 获取 目前 字母
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top