--创建一个汉字提取首字母的函数
--还存在一点小小的问题(符号?)
create function hs(@a varchar(1000)='')
returns varchar(1000)
as
begin
declare @b varchar(40),@i int,@c varchar(10)
declare @d varchar(10),@e varchar(10),@pinyin nvarchar(2000)
set @i=1
set @pinyin=''
while @i<=len(@a)
begin
set @c=substring(@a,@i,1)
set @e=cast(@c as varbinary)
if @e>=0xB0A1 and @e<=0xB0C4
BEGIN
  set @pinyin=@pinyin+'A'
END
if @e>=0xB0C5 and @e<=0xB2C0
BEGIN
set @pinyin=@pinyin+'B'
END
if @e>=0xB2C1 and @e<=0xB4ED
BEGIN
set @pinyin=@pinyin+'C'
END
if @e>=0xB4EE and @e<=0xB6E9
BEGIN
set @pinyin=@pinyin+'D'
END
if @e>=0xB6EA and @e<=0xB7A1
BEGIN
set @pinyin=@pinyin+'E'
END
if @e>=0xB7A2 and @e<=0xB8C0
BEGIN
set @pinyin=@pinyin+'F'
END
if @e>=0xB8C1 and @e<=0xB9FD
BEGIN
set @pinyin=@pinyin+'G'
END
if @e>=0xB9FE and @e<=0xBBF6
BEGIN
set @pinyin=@pinyin+'H'
END
if @e>=0xBBF7 and @e<=0xBFA5
BEGIN
set @pinyin=@pinyin+'J'
END
if @e>=0xBFA6 and @e<=0xC0AB
BEGIN
set @pinyin=@pinyin+'K'
END
if @e>=0xC0AC and @e<=0xC2E7
BEGIN
set @pinyin=@pinyin+'L'
END
if @e>=0xC2E8 and @e<=0xC4C2
BEGIN
set @pinyin=@pinyin+'M'
END
if @e>=0xC4C3 and @e<=0xC5B5
BEGIN
set @pinyin=@pinyin+'N'
END 
if @e>=0xC5B6 and @e<=0xC5BD
BEGIN
set @pinyin=@pinyin+'O'
END
if @e>=0xC5BE and @e<=0xC6D9
BEGIN
set @pinyin=@pinyin+'P'
END
if @e>=0xC6DA and @e<=0xC8BA
BEGIN
set @pinyin=@pinyin+'Q'
END
if @e>=0xC8BB and @e<=0xC8F5
BEGIN
set @pinyin=@pinyin+'R'
END  
if @e>=0xC8F6 and @e<=0xCBF9
BEGIN
set @pinyin=@pinyin+'S'
END
if @e>=0xCBFA and @e<=0xCDD9
BEGIN
set @pinyin=@pinyin+'T'
END
if @e>=0xCDDA and @e<=0xCEF3
BEGIN
set @pinyin=@pinyin+'W'
END
if @e>=0xCEF4 and @e<=0xD1B8
BEGIN
set @pinyin=@pinyin+'X'
END
if @e>=0xD1B9 and @e<=0xD4D0
BEGIN
set @pinyin=@pinyin+'Y'
END
if @e>=0xD4D1 and @e<=0xD7F9
BEGIN
set @pinyin=@pinyin+'Z'
END
set @i=@i+1
end
return @pinyin
end

SQLSERVER中汉字提取首字母的拼音函数的实现的更多相关文章

  1. iOS汉字中提取首字母

    NSMutableString *mutableStr = [[NSMutableString alloc]initWithString:string]; if (CFStringTransform( ...

  2. 终结者:借助pinyin4j相关jar包提取汉字的首字母

    import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuPinyinCase ...

  3. sql 汉字转首字母拼音

    从网络上收刮了一些,以备后用 create function fun_getPY(@str nvarchar()) returns nvarchar() as begin declare @word ...

  4. Android -- 获取汉字的首字母

    转换                                                                                             获取一个汉 ...

  5. java汉字获取首字母

    前言 在项目中很多时候我们需要获取姓名或者名称的首字母或者全拼,以用于模糊查询或者字母查询,在这里分享一个实例:供小伙伴们参考. 导入jar包 <dependency> <group ...

  6. word2013中取消句首字母自动大写

    经常使用word的朋友都知道word中一行的首字母会自动大写,这给用户带来方便的同时,也产生了问题,因为有时候我们并不希望每行开头的首字母大写.要取消首字母自动大写可以取消勾选"首句字母大写 ...

  7. Javascript 将一个句子中的单词首字母转成大写

    Javascript 将一个句子中的单词首字母转成大写 先上代码 function titleCase(str) { str = str.toLowerCase().split(" &quo ...

  8. Code:获取指定汉字的首字母

    ylbtech-Code:获取指定汉字的首字母 1.获取指定汉字的首字母返回顶部 1. /// <summary> /// 获取指定汉字的首字母 /// </summary> ...

  9. php 中文字符串首字母的获取函数

    这篇文章介绍了php 中文字符串首字母的获取函数,有需要的朋友可以参考一下 function chineseFirst($str) { $str= iconv("UTF-8",&q ...

随机推荐

  1. 51nod数字1的数量

    这道题瞎jbyy了很久 方法可能很奇怪... #include<cstdio> #include<cstring> #include<algorithm> #inc ...

  2. [codevs3160]最长公共子串解题报告|后缀自动机

    给出两个由小写字母组成的字符串,求它们的最长公共子串的长度. 样例就觉得不能更眼熟啊...好像之前用后缀数组做过一次 然后发现后缀自动机真的好好写啊...(当然当时学后缀数组的时候也这么认为... 这 ...

  3. php 中foreach比for快之原因

    这里首先要谈到php 的hashtabletypedef struct _hashtable { uint nTableSize; // hash Bucket的大小,最小为8,以2x增长. uint ...

  4. MINA 网络黏包处理代码

    本文完整代码,可以浏览: https://github.com/hjj2017/xgame-code_server/blob/master/game_server/src/com/game/gameS ...

  5. MySQL中EXISTS的用法

    比如在Northwind数据库中有一个查询为 SELECT c.CustomerId,CompanyName FROM Customers c WHERE EXISTS( SELECT OrderID ...

  6. Cpython解释器支持的线程

    因为Python解释器帮你自动定期进行内存回收,你可以理解为python解释器里有一个独立的线程,每过一段时间它起wake up做一次全局轮询看看哪些内存数据是可以被清空的,此时你自己的程序 里的线程 ...

  7. bayer转dng实现过程记录

    前言 项目中需要将imx185出来的raw数据转成dng格式,一开始认为很简单的事情,后面才发现还是挺复杂的!!!首先考虑的是不写任何代码,直接用adobe提供的转换工具来转,结果发现,不仅是adob ...

  8. springboot 整合jdbcTemplate

    springboot 整合jdbcTemplate 〇.搭建springboot环境(包括数据库的依赖) 一.添加依赖 如果导入了jpa的依赖,就不用导入jdbctemplete的依赖了jpa的依赖: ...

  9. SQL Server数据库优化笔记

    不定时更新 select DateDiff(month,'2018-06-07',GETDATE()) PACTBEGINDATE ORDER BY PACTBEGINDATE ASC),GETDAT ...

  10. 3.shell位置参数变量

    当我们执行一个shell脚本时,希望可以获取命令行里的参数信息,就可以使用位置参数变量.比如 sh ./a.sh 100 200,就是一个执行shell的命令行,可以在a.sh脚本中获取到参数信息 语 ...