惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
小众软件
小众软件
爱范儿
爱范儿
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
量子位
博客园_首页
T
Tailwind CSS Blog
The Cloudflare Blog
J
Java Code Geeks
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
U
Unit 42
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
腾讯CDC
P
Proofpoint News Feed
aimingoo的专栏
aimingoo的专栏
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
D
Docker
Microsoft Azure Blog
Microsoft Azure Blog

博客园 - 优雅小猪

xp远程桌面登录 xmlhttp调用后台 - 优雅小猪 - 博客园 w3c的web标准校验工具 最小高度的实现 - 优雅小猪 - 博客园 div左右排版 - 优雅小猪 - 博客园 网页上运行代码和复制代码 - 优雅小猪 - 博客园 asp.net上传多个文件 - 优雅小猪 - 博客园 div vertical-align不起作用解决办法 - 优雅小猪 - 博客园 parentNode、parentElement,childNodes、children web后台运行任务(zz) 两个div,一个左右排列不换行(zz:http://www.cnblogs.com/circlesport/archive/2007/03/15/676261.html) - 优雅小猪 - 博客园 控制web页面的某块是否显示出来 - 优雅小猪 - 博客园 SVN的建立配置和简单使用 用<%if()%>控制页面某些部分是否可见 - 优雅小猪 - 博客园 placeholder LiteralControl从后台生成前台控件 - 优雅小猪 - 博客园 鼠标移入移出某个元素,元素背景变化 javascript同名函数 错误配置 Title换行
获得汉字的拼音首字母以及整个拼音
优雅小猪 · 2009-01-12 · via 博客园 - 优雅小猪

1 SQL Server
  代码:
  获得首字母:
  CREATE function fun_getPY(@str nvarchar(4000))
returns nvarchar(4000) as
BEGIN
  declare @word nchar(1),@PY nvarchar(4000)
  set @PY=''
  while len(@str)>0
  BEGIN
    set @word=left(@str,1)
    set @PY=@PY+(case when unicode(@word) between 19968 and 19968+20901
    then (
          select top 1 PY
          from
          (
            select 'A' as PY,N'驁' as word
            union all select 'B',N'簿'
            union all select 'C',N'錯'
            union all select 'D',N'鵽'
            union all select 'E',N'樲'
            union all select 'F',N'鰒'
            union all select 'G',N'腂'
            union all select 'H',N'夻'
            union all select 'J',N'攈'
            union all select 'K',N'穒'
            union all select 'L',N'鱳'
            union all select 'M',N'旀'
            union all select 'N',N'桛'
            union all select 'O',N'漚'
            union all select 'P',N'曝'
            union all select 'Q',N'囕'
            union all select 'R',N'鶸'
            union all select 'S',N'蜶'
            union all select 'T',N'籜'
            union all select 'W',N'鶩'
            union all select 'X',N'鑂'
            union all select 'Y',N'韻'
            union all select 'Z',N'咗'
) T
where word>=@word collate Chinese_PRC_CS_AS_KS_WS
order by PY ASC
)
else @word
end)
  set @str=right(@str,len(@str)-1)
END
return @PY
END
go

获得全部拼音
if exists (select 1 from sysobjects
   where id = object_id('pinyin')
   and type = 'U')
drop table pinyin
go

CREATE TABLE pinyin (py varchar(10) NOT NULL DEFAULT '', code int NOT NULL DEFAULT 0)    
go

INSERT INTO pinyin values('a',-20319   )
INSERT INTO pinyin values('ai', -20317 )
INSERT INTO pinyin values('an' ,-20304 )
INSERT INTO pinyin values('ang' ,-20295)
INSERT INTO pinyin values('ao' ,-20292 )
INSERT INTO pinyin values('ba' ,-20283 )
INSERT INTO pinyin values('bai', -20265)
INSERT INTO pinyin values('ban', -20257)
INSERT INTO pinyin values('bang', -20242)
INSERT INTO pinyin values('bao' ,-20230)
INSERT INTO pinyin values('bei' ,-20051)
INSERT INTO pinyin values('ben' ,-20036)
INSERT INTO pinyin values('beng' ,-20032)
INSERT INTO pinyin values('bi' ,-20026 )
INSERT INTO pinyin values('bian' ,-20002)
INSERT INTO pinyin values('biao' ,-19990)
INSERT INTO pinyin values('bie' ,-19986 )
INSERT INTO pinyin values('bin' ,-19982 )
INSERT INTO pinyin values('bing' ,-19976)
INSERT INTO pinyin values('bo' ,-19805  )
INSERT INTO pinyin values('bu' ,-19784  )
INSERT INTO pinyin values('ca' ,-19775  )
INSERT INTO pinyin values('cai' ,-19774 )
INSERT INTO pinyin values('can' ,-19763 )
INSERT INTO pinyin values('cang' ,-19756)
INSERT INTO pinyin values('cao' ,-19751 )
INSERT INTO pinyin values('ce' ,-19746  )
INSERT INTO pinyin values('ceng' ,-19741)
INSERT INTO pinyin values('cha' ,-19739 )
INSERT INTO pinyin values('chai' ,-19728)
INSERT INTO pinyin values('chan' ,-19725)
INSERT INTO pinyin values('chang' ,-19715)
INSERT INTO pinyin values('chao' ,-19540)
INSERT INTO pinyin values('che' ,-19531 )
INSERT INTO pinyin values('chen' ,-19525)
INSERT INTO pinyin values('cheng' ,-19515)
INSERT INTO pinyin values('chi' ,-19500 )
INSERT INTO pinyin values('chong' ,-19484)
INSERT INTO pinyin values('chou' ,-19479)
INSERT INTO pinyin values('chu' ,-19467 )
INSERT INTO pinyin values('chuai' ,-19289)
INSERT INTO pinyin values('chuan' ,-19288)
INSERT INTO pinyin values('chuang' ,-19281)
INSERT INTO pinyin values('chui' ,-19275 )
INSERT INTO pinyin values('chun' ,-19270 )
INSERT INTO pinyin values('chuo' ,-19263 )
INSERT INTO pinyin values('ci' ,-19261   )
INSERT INTO pinyin values('cong' ,-19249 )
INSERT INTO pinyin values('cou' ,-19243  )
INSERT INTO pinyin values('cu' ,-19242   )
INSERT INTO pinyin values('cuan' ,-19238 )
INSERT INTO pinyin values('cui', -19235  )
INSERT INTO pinyin values('cun' ,-19227  )
INSERT INTO pinyin values('cuo' ,-19224  )
INSERT INTO pinyin values('da' ,-19218   )
INSERT INTO pinyin values('dai' ,-19212  )
INSERT INTO pinyin values('dan' ,-19038  )
INSERT INTO pinyin values('dang' ,-19023 )
INSERT INTO pinyin values('dao' ,-19018  )
INSERT INTO pinyin values('de' ,-19006   )
INSERT INTO pinyin values('deng' ,-19003 )
INSERT INTO pinyin values('di' ,-18996   )
INSERT INTO pinyin values('dian' ,-18977 )
INSERT INTO pinyin values('diao' ,-18961 )
INSERT INTO pinyin values('die' ,-18952  )
INSERT INTO pinyin values('ding' ,-18783 )
INSERT INTO pinyin values('diu' ,-18774  )
INSERT INTO pinyin values('dong' ,-18773 )
INSERT INTO pinyin values('dou' ,-18763  )
INSERT INTO pinyin values('du' ,-18756   )
INSERT INTO pinyin values('duan' ,-18741 )
INSERT INTO pinyin values('dui' ,-18735  )
INSERT INTO pinyin values('dun' ,-18731  )
INSERT INTO pinyin values('duo' ,-18722  )
INSERT INTO pinyin values('e' ,-18710    )
INSERT INTO pinyin values('en' ,-18697   )
INSERT INTO pinyin values('er' ,-18696   )
INSERT INTO pinyin values('fa' ,-18526   )
INSERT INTO pinyin values('fan' ,-18518  )
INSERT INTO pinyin values('fang', -18501 )
INSERT INTO pinyin values('fei' ,-18490  )
INSERT INTO pinyin values('fen' ,-18478  )
INSERT INTO pinyin values('feng' ,-18463 )
INSERT INTO pinyin values('fo' ,-18448   )
INSERT INTO pinyin values('fou' ,-18447  )
INSERT INTO pinyin values('fu' ,-18446   )
INSERT INTO pinyin values('ga' ,-18239   )
INSERT INTO pinyin values('gai' ,-18237  )
INSERT INTO pinyin values('gan' ,-18231  )
INSERT INTO pinyin values('gang', -18220 )
INSERT INTO pinyin values('gao' ,-18211  )
INSERT INTO pinyin values('ge' ,-18201   )
INSERT INTO pinyin values('gei' ,-18184  )
INSERT INTO pinyin values('gen' ,-18183  )
INSERT INTO pinyin values('geng', -18181 )
INSERT INTO pinyin values('gong', -18012 )
INSERT INTO pinyin values('gou' ,-17997  )
INSERT INTO pinyin values('gu' ,-17988   )
INSERT INTO pinyin values('gua' ,-17970  )
INSERT INTO pinyin values('guai', -17964 )
INSERT INTO pinyin values('guan', -17961 )
INSERT INTO pinyin values('guang', -17950)
INSERT INTO pinyin values('gui' ,-17947  )
INSERT INTO pinyin values('gun' ,-17931  )
INSERT INTO pinyin values('guo' ,-17928  )
INSERT INTO pinyin values('ha' ,-17922   )
INSERT INTO pinyin values('hai' ,-17759  )
INSERT INTO pinyin values('han' ,-17752  )
INSERT INTO pinyin values('hang' ,-17733 )
INSERT INTO pinyin values('hao' ,-17730  )
INSERT INTO pinyin values('he' ,-17721   )
INSERT INTO pinyin values('hei', -17703  )
INSERT INTO pinyin values('hen', -17701  )
INSERT INTO pinyin values('heng', -17697 )
INSERT INTO pinyin values('hong', -17692 )
INSERT INTO pinyin values('hou' ,-17683  )
INSERT INTO pinyin values('hu' ,-17676   )
INSERT INTO pinyin values('hua', -17496  )
INSERT INTO pinyin values('huai', -17487 )
INSERT INTO pinyin values('huan', -17482 )
INSERT INTO pinyin values('huang', -17468)
INSERT INTO pinyin values('hui' ,-17454  )
INSERT INTO pinyin values('hun' ,-17433  )
INSERT INTO pinyin values('huo' ,-17427  )
INSERT INTO pinyin values('ji' ,-17417   )
INSERT INTO pinyin values('jia', -17202  )
INSERT INTO pinyin values('jian', -17185 )
INSERT INTO pinyin values('jiang', -16983)
INSERT INTO pinyin values('jiao' ,-16970 )
INSERT INTO pinyin values('jie' ,-16942  )
INSERT INTO pinyin values('jin' ,-16915  )
INSERT INTO pinyin values('jing', -16733 )
INSERT INTO pinyin values('jiong', -16708)
INSERT INTO pinyin values('jiu' ,-16706  )
INSERT INTO pinyin values('ju' ,-16689   )
INSERT INTO pinyin values('juan', -16664 )
INSERT INTO pinyin values('jue' ,-16657  )
INSERT INTO pinyin values('jun' ,-16647  )
INSERT INTO pinyin values('ka' ,-16474   )
INSERT INTO pinyin values('kai', -16470  )
INSERT INTO pinyin values('kan', -16465  )
INSERT INTO pinyin values('kang', -16459 )
INSERT INTO pinyin values('kao' ,-16452  )
INSERT INTO pinyin values('ke' ,-16448   )
INSERT INTO pinyin values('ken', -16433  )
INSERT INTO pinyin values('keng', -16429 )
INSERT INTO pinyin values('kong', -16427 )
INSERT INTO pinyin values('kou' ,-16423  )
INSERT INTO pinyin values('ku' ,-16419   )
INSERT INTO pinyin values('kua', -16412  )
INSERT INTO pinyin values('kuai', -16407 )
INSERT INTO pinyin values('kuan', -16403 )
INSERT INTO pinyin values('kuang', -16401)
INSERT INTO pinyin values('kui' ,-16393  )
INSERT INTO pinyin values('kun' ,-16220  )
INSERT INTO pinyin values('kuo' ,-16216  )
INSERT INTO pinyin values('la' ,-16212   )
INSERT INTO pinyin values('lai' ,-16205  )
INSERT INTO pinyin values('lan' ,-16202  )
INSERT INTO pinyin values('lang' ,-16187 )
INSERT INTO pinyin values('lao' ,-16180  )
INSERT INTO pinyin values('le' ,-16171   )
INSERT INTO pinyin values('lei', -16169  )
INSERT INTO pinyin values('leng', -16158 )
INSERT INTO pinyin values('li' ,-16155   )
INSERT INTO pinyin values('lia', -15959  )
INSERT INTO pinyin values('lian', -15958 )
INSERT INTO pinyin values('liang', -15944)
INSERT INTO pinyin values('liao' ,-15933 )
INSERT INTO pinyin values('lie' ,-15920  )
INSERT INTO pinyin values('lin' ,-15915  )
INSERT INTO pinyin values('ling', -15903 )
INSERT INTO pinyin values('liu' ,-15889  )
INSERT INTO pinyin values('long', -15878 )
INSERT INTO pinyin values('lou' ,-15707  )
INSERT INTO pinyin values('lu' ,-15701   )
INSERT INTO pinyin values('luan', -15667 )
INSERT INTO pinyin values('lue' ,-15661  )
INSERT INTO pinyin values('lun' ,-15659  )
INSERT INTO pinyin values('luo' ,-15652  )
INSERT INTO pinyin values('ma' ,-15640   )
INSERT INTO pinyin values('mai', -15631  )
INSERT INTO pinyin values('man', -15625  )
INSERT INTO pinyin values('mang', -15454 )
INSERT INTO pinyin values('mao' ,-15448  )
INSERT INTO pinyin values('me' ,-15436   )
INSERT INTO pinyin values('mei' ,-15435  )
INSERT INTO pinyin values('men' ,-15419  )
INSERT INTO pinyin values('meng', -15416 )
INSERT INTO pinyin values('mi' ,-15408   )
INSERT INTO pinyin values('mian', -15394 )
INSERT INTO pinyin values('miao', -15385 )
INSERT INTO pinyin values('mie' ,-15377  )
INSERT INTO pinyin values('min' ,-15375  )
INSERT INTO pinyin values('ming', -15369 )
INSERT INTO pinyin values('miu' ,-15363  )
INSERT INTO pinyin values('mo' ,-15362   )
INSERT INTO pinyin values('mou' ,-15183  )
INSERT INTO pinyin values('na' ,-15165   )
INSERT INTO pinyin values('nai', -15158  )
INSERT INTO pinyin values('nan', -15153  )
INSERT INTO pinyin values('nang', -15150 )
INSERT INTO pinyin values('nao' ,-15149  )
INSERT INTO pinyin values('ne' ,-15144   )
INSERT INTO pinyin values('nei', -15143  )
INSERT INTO pinyin values('nen' ,-15141  )
INSERT INTO pinyin values('neng', -15140 )
INSERT INTO pinyin values('ni' ,-15139   )
INSERT INTO pinyin values('nian', -15128 )
INSERT INTO pinyin values('niao' ,-15119 )
INSERT INTO pinyin values('nie' ,-15117  )
INSERT INTO pinyin values('nin' ,-15110  )
INSERT INTO pinyin values('ning' ,-15109 )
INSERT INTO pinyin values('niu' ,-14941  )
INSERT INTO pinyin values('nong', -14937 )
INSERT INTO pinyin values('nu' ,-14933   )
INSERT INTO pinyin values('nv' ,-14930   )
INSERT INTO pinyin values('nuan', -14929 )
INSERT INTO pinyin values('nue' ,-14928  )
INSERT INTO pinyin values('nuo' ,-14926  )
INSERT INTO pinyin values('o' ,-14922    )
INSERT INTO pinyin values('ou', -14921   )
INSERT INTO pinyin values('pa', -14914   )
INSERT INTO pinyin values('pan', -14902  )
INSERT INTO pinyin values('pang', -14894 )
INSERT INTO pinyin values('pao' ,-14889  )
INSERT INTO pinyin values('pei' ,-14882  )
INSERT INTO pinyin values('pen' ,-14873  )
INSERT INTO pinyin values('peng', -14871 )
INSERT INTO pinyin values('pi' ,-14857   )
INSERT INTO pinyin values('pian', -14678 )
INSERT INTO pinyin values('piao', -14674 )
INSERT INTO pinyin values('pie' ,-14670  )
INSERT INTO pinyin values('pin' ,-14668  )
INSERT INTO pinyin values('ping', -14663 )
INSERT INTO pinyin values('po' ,-14654   )
INSERT INTO pinyin values('pu' ,-14645   )
INSERT INTO pinyin values('qi' ,-14630   )
INSERT INTO pinyin values('qia' ,-14594  )
INSERT INTO pinyin values('qian', -14429 )
INSERT INTO pinyin values('qiang', -14407)
INSERT INTO pinyin values('qiao' ,-14399 )
INSERT INTO pinyin values('qie' ,-14384  )
INSERT INTO pinyin values('qin' ,-14379  )
INSERT INTO pinyin values('qing', -14368 )
INSERT INTO pinyin values('qiong', -14355)
INSERT INTO pinyin values('qiu' ,-14353  )
INSERT INTO pinyin values('qu' ,-14345   )
INSERT INTO pinyin values('quan', -14170 )
INSERT INTO pinyin values('que' ,-14159  )
INSERT INTO pinyin values('qun' ,-14151  )
INSERT INTO pinyin values('ran' ,-14149  )
INSERT INTO pinyin values('rang' ,-14145 )
INSERT INTO pinyin values('rao' ,-14140  )
INSERT INTO pinyin values('re' ,-14137   )
INSERT INTO pinyin values('ren', -14135  )
INSERT INTO pinyin values('reng', -14125 )
INSERT INTO pinyin values('ri' ,-14123   )
INSERT INTO pinyin values('rong', -14122 )
INSERT INTO pinyin values('rou' ,-14112  )
INSERT INTO pinyin values('ru' ,-14109   )
INSERT INTO pinyin values('ruan', -14099 )
INSERT INTO pinyin values('rui' ,-14097  )
INSERT INTO pinyin values('ruo' ,-14092  )
INSERT INTO pinyin values('sa', -14090   )
INSERT INTO pinyin values('sai', -14087  )
INSERT INTO pinyin values('san', -14083  )
INSERT INTO pinyin values('sang', -13917 )
INSERT INTO pinyin values('sao' ,-13914  )
INSERT INTO pinyin values('se' ,-13910   )
INSERT INTO pinyin values('sen', -13907  )
INSERT INTO pinyin values('seng', -13906 )
INSERT INTO pinyin values('sha' ,-13905  )
INSERT INTO pinyin values('shai', -13896 )
INSERT INTO pinyin values('shan', -13894 )
INSERT INTO pinyin values('shang', -13878)
INSERT INTO pinyin values('shao' ,-13870 )
INSERT INTO pinyin values('she' ,-13859  )
INSERT INTO pinyin values('shen' ,-13847 )
INSERT INTO pinyin values('sheng' ,-13831)
INSERT INTO pinyin values('shi' ,-13658  )
INSERT INTO pinyin values('shou', -13611 )
INSERT INTO pinyin values('shu' ,-13601  )
INSERT INTO pinyin values('shua', -13406 )
INSERT INTO pinyin values('shuai', -13404)
INSERT INTO pinyin values('shuan', -13400)
INSERT INTO pinyin values('shuang', -13398)
INSERT INTO pinyin values('shui' ,-13395 )
INSERT INTO pinyin values('shun' ,-13391 )
INSERT INTO pinyin values('shuo' ,-13387 )
INSERT INTO pinyin values('si' ,-13383   )
INSERT INTO pinyin values('song', -13367 )
INSERT INTO pinyin values('sou', -13359  )
INSERT INTO pinyin values('su' ,-13356   )
INSERT INTO pinyin values('suan', -13343 )
INSERT INTO pinyin values('sui' ,-13340  )
INSERT INTO pinyin values('sun' ,-13329  )
INSERT INTO pinyin values('suo' ,-13326  )
INSERT INTO pinyin values('ta' ,-13318   )
INSERT INTO pinyin values('tai', -13147  )
INSERT INTO pinyin values('tan', -13138  )
INSERT INTO pinyin values('tang', -13120 )
INSERT INTO pinyin values('tao' ,-13107  )
INSERT INTO pinyin values('te' ,-13096   )
INSERT INTO pinyin values('teng', -13095 )
INSERT INTO pinyin values('ti' ,-13091   )
INSERT INTO pinyin values('tian', -13076 )
INSERT INTO pinyin values('tiao', -13068 )
INSERT INTO pinyin values('tie' ,-13063  )
INSERT INTO pinyin values('ting', -13060 )
INSERT INTO pinyin values('tong', -12888 )
INSERT INTO pinyin values('tou' ,-12875  )
INSERT INTO pinyin values('tu' ,-12871   )
INSERT INTO pinyin values('tuan', -12860 )
INSERT INTO pinyin values('tui', -12858  )
INSERT INTO pinyin values('tun' ,-12852  )
INSERT INTO pinyin values('tuo' ,-12849  )
INSERT INTO pinyin values('wa' ,-12838   )
INSERT INTO pinyin values('wai' ,-12831  )
INSERT INTO pinyin values('wan' ,-12829  )
INSERT INTO pinyin values('wang', -12812 )
INSERT INTO pinyin values('wei' ,-12802  )
INSERT INTO pinyin values('wen' ,-12607  )
INSERT INTO pinyin values('weng' ,-12597 )
INSERT INTO pinyin values('wo' ,-12594   )
INSERT INTO pinyin values('wu' ,-12585   )
INSERT INTO pinyin values('xi' ,-12556   )
INSERT INTO pinyin values('xia', -12359  )
INSERT INTO pinyin values('xian', -12346 )
INSERT INTO pinyin values('xiang', -12320)
INSERT INTO pinyin values('xiao' ,-12300 )
INSERT INTO pinyin values('xie' ,-12120  )
INSERT INTO pinyin values('xin' ,-12099  )
INSERT INTO pinyin values('xing', -12089 )
INSERT INTO pinyin values('xiong', -12074)
INSERT INTO pinyin values('xiu' ,-12067  )
INSERT INTO pinyin values('xu' ,-12058   )
INSERT INTO pinyin values('xuan', -12039 )
INSERT INTO pinyin values('xue' ,-11867  )
INSERT INTO pinyin values('xun' ,-11861  )
INSERT INTO pinyin values('ya' ,-11847   )
INSERT INTO pinyin values('yan', -11831  )
INSERT INTO pinyin values('yang', -11798 )
INSERT INTO pinyin values('yao' ,-11781  )
INSERT INTO pinyin values('ye' ,-11604   )
INSERT INTO pinyin values('yi' ,-11589   )
INSERT INTO pinyin values('yin', -11536  )
INSERT INTO pinyin values('ying', -11358 )
INSERT INTO pinyin values('yo' ,-11340   )
INSERT INTO pinyin values('yong', -11339 )
INSERT INTO pinyin values('you' ,-11324  )
INSERT INTO pinyin values('yu' ,-11303   )
INSERT INTO pinyin values('yuan', -11097 )
INSERT INTO pinyin values('yue' ,-11077  )
INSERT INTO pinyin values('yun' ,-11067  )
INSERT INTO pinyin values('za' ,-11055   )
INSERT INTO pinyin values('zai' ,-11052  )
INSERT INTO pinyin values('zan' ,-11045  )
INSERT INTO pinyin values('zang', -11041 )
INSERT INTO pinyin values('zao' ,-11038  )
INSERT INTO pinyin values('ze' ,-11024   )
INSERT INTO pinyin values('zei', -11020  )
INSERT INTO pinyin values('zen' ,-11019  )
INSERT INTO pinyin values('zeng', -11018 )
INSERT INTO pinyin values('zha' ,-11014  )
INSERT INTO pinyin values('zhai', -10838 )
INSERT INTO pinyin values('zhan', -10832 )
INSERT INTO pinyin values('zhang', -10815)
INSERT INTO pinyin values('zhao' ,-10800 )
INSERT INTO pinyin values('zhe' ,-10790  )
INSERT INTO pinyin values('zhen' ,-10780 )
INSERT INTO pinyin values('zheng', -10764)
INSERT INTO pinyin values('zhi' ,-10587  )
INSERT INTO pinyin values('zhong', -10544)
INSERT INTO pinyin values('zhou', -10533 )
INSERT INTO pinyin values('zhu' ,-10519  )
INSERT INTO pinyin values('zhua', -10331 )
INSERT INTO pinyin values('zhuai', -10329)
INSERT INTO pinyin values('zhuan', -10328)
INSERT INTO pinyin values('zhuang', -10322)
INSERT INTO pinyin values('zhui' ,-10315 )
INSERT INTO pinyin values('zhun', -10309 )
INSERT INTO pinyin values('zhuo', -10307 )
INSERT INTO pinyin values('zi' ,-10296   )
INSERT INTO pinyin values('zong', -10281 )
INSERT INTO pinyin values('zou' ,-10274  )
INSERT INTO pinyin values('zu' ,-10270   )
INSERT INTO pinyin values('zuan', -10262 )
INSERT INTO pinyin values('zui' ,-10260  )
INSERT INTO pinyin values('zun' ,-10256  )
INSERT INTO pinyin values('zuo' ,-10254  )
go


if exists (select 1
           from sysobjects
           where id = object_id('fun_getPY_Whole'))
   drop Function fun_getPY_Whole
go

create function fun_getPY_Whole(@str varchar(4000))
returns varchar(4000) as
BEGIN
  declare @word varchar(10),@PY varchar(4000)
  DECLARE @v int
  declare @temp varchar(10)
  set @PY=''
  while len(@str)>0
  BEGIN
    set @word=left(@str,1)
      
    if  unicode(@word) between 19968 and 19968+20901
     begin
   
        select @v  = convert(int,substring(convert(varbinary,@word),1,1)) * 256 + convert(int,substring(convert

(varbinary,@word),2,1))-65535
 
        select @temp = MAX(py) FROM pinyin WHERE [code]<@v
   
        set @PY=@PY+@temp
     end    
    else
       set @PY=@PY +  @word

    set @str=right(@str,len(@str)-1)

END
return @PY
END
go

  参考:
http://topic.csdn.net/t/20020705/10/851769.html#
http://www.shouker.com/user4/dna/2008/4/22/121031.html
http://www.sudu.cn/info/html/edu/database/20071226/22305.html

2 c#
       //获得整个拼音
        public string GetSpell(string x)
        {
            int[] iA = new int[]
              {
                   -20319 ,-20317 ,-20304 ,-20295 ,-20292 ,-20283 ,-20265 ,-20257 ,-20242 ,-20230
                   ,-20051 ,-20036 ,-20032 ,-20026 ,-20002 ,-19990 ,-19986 ,-19982 ,-19976 ,-19805
                   ,-19784 ,-19775 ,-19774 ,-19763 ,-19756 ,-19751 ,-19746 ,-19741 ,-19739 ,-19728
                   ,-19725 ,-19715 ,-19540 ,-19531 ,-19525 ,-19515 ,-19500 ,-19484 ,-19479 ,-19467
                   ,-19289 ,-19288 ,-19281 ,-19275 ,-19270 ,-19263 ,-19261 ,-19249 ,-19243 ,-19242
                   ,-19238 ,-19235 ,-19227 ,-19224 ,-19218 ,-19212 ,-19038 ,-19023 ,-19018 ,-19006
                   ,-19003 ,-18996 ,-18977 ,-18961 ,-18952 ,-18783 ,-18774 ,-18773 ,-18763 ,-18756
                   ,-18741 ,-18735 ,-18731 ,-18722 ,-18710 ,-18697 ,-18696 ,-18526 ,-18518 ,-18501
                   ,-18490 ,-18478 ,-18463 ,-18448 ,-18447 ,-18446 ,-18239 ,-18237 ,-18231 ,-18220
                   ,-18211 ,-18201 ,-18184 ,-18183 ,-18181 ,-18012 ,-17997 ,-17988 ,-17970 ,-17964
                   ,-17961 ,-17950 ,-17947 ,-17931 ,-17928 ,-17922 ,-17759 ,-17752 ,-17733 ,-17730
                   ,-17721 ,-17703 ,-17701 ,-17697 ,-17692 ,-17683 ,-17676 ,-17496 ,-17487 ,-17482
                   ,-17468 ,-17454 ,-17433 ,-17427 ,-17417 ,-17202 ,-17185 ,-16983 ,-16970 ,-16942
                   ,-16915 ,-16733 ,-16708 ,-16706 ,-16689 ,-16664 ,-16657 ,-16647 ,-16474 ,-16470
                   ,-16465 ,-16459 ,-16452 ,-16448 ,-16433 ,-16429 ,-16427 ,-16423 ,-16419 ,-16412
                   ,-16407 ,-16403 ,-16401 ,-16393 ,-16220 ,-16216 ,-16212 ,-16205 ,-16202 ,-16187
                   ,-16180 ,-16171 ,-16169 ,-16158 ,-16155 ,-15959 ,-15958 ,-15944 ,-15933 ,-15920
                   ,-15915 ,-15903 ,-15889 ,-15878 ,-15707 ,-15701 ,-15681 ,-15667 ,-15661 ,-15659
                   ,-15652 ,-15640 ,-15631 ,-15625 ,-15454 ,-15448 ,-15436 ,-15435 ,-15419 ,-15416
                   ,-15408 ,-15394 ,-15385 ,-15377 ,-15375 ,-15369 ,-15363 ,-15362 ,-15183 ,-15180
                   ,-15165 ,-15158 ,-15153 ,-15150 ,-15149 ,-15144 ,-15143 ,-15141 ,-15140 ,-15139
                   ,-15128 ,-15121 ,-15119 ,-15117 ,-15110 ,-15109 ,-14941 ,-14937 ,-14933 ,-14930
                   ,-14929 ,-14928 ,-14926 ,-14922 ,-14921 ,-14914 ,-14908 ,-14902 ,-14894 ,-14889
                   ,-14882 ,-14873 ,-14871 ,-14857 ,-14678 ,-14674 ,-14670 ,-14668 ,-14663 ,-14654
                   ,-14645 ,-14630 ,-14594 ,-14429 ,-14407 ,-14399 ,-14384 ,-14379 ,-14368 ,-14355
                   ,-14353 ,-14345 ,-14170 ,-14159 ,-14151 ,-14149 ,-14145 ,-14140 ,-14137 ,-14135
                   ,-14125 ,-14123 ,-14122 ,-14112 ,-14109 ,-14099 ,-14097 ,-14094 ,-14092 ,-14090
                   ,-14087 ,-14083 ,-13917 ,-13914 ,-13910 ,-13907 ,-13906 ,-13905 ,-13896 ,-13894
                   ,-13878 ,-13870 ,-13859 ,-13847 ,-13831 ,-13658 ,-13611 ,-13601 ,-13406 ,-13404
                   ,-13400 ,-13398 ,-13395 ,-13391 ,-13387 ,-13383 ,-13367 ,-13359 ,-13356 ,-13343
                   ,-13340 ,-13329 ,-13326 ,-13318 ,-13147 ,-13138 ,-13120 ,-13107 ,-13096 ,-13095
                   ,-13091 ,-13076 ,-13068 ,-13063 ,-13060 ,-12888 ,-12875 ,-12871 ,-12860 ,-12858
                   ,-12852 ,-12849 ,-12838 ,-12831 ,-12829 ,-12812 ,-12802 ,-12607 ,-12597 ,-12594
                   ,-12585 ,-12556 ,-12359 ,-12346 ,-12320 ,-12300 ,-12120 ,-12099 ,-12089 ,-12074
                   ,-12067 ,-12058 ,-12039 ,-11867 ,-11861 ,-11847 ,-11831 ,-11798 ,-11781 ,-11604
                   ,-11589 ,-11536 ,-11358 ,-11340 ,-11339 ,-11324 ,-11303 ,-11097 ,-11077 ,-11067
                   ,-11055 ,-11052 ,-11045 ,-11041 ,-11038 ,-11024 ,-11020 ,-11019 ,-11018 ,-11014
                   ,-10838 ,-10832 ,-10815 ,-10800 ,-10790 ,-10780 ,-10764 ,-10587 ,-10544 ,-10533
                   ,-10519 ,-10331 ,-10329 ,-10328 ,-10322 ,-10315 ,-10309 ,-10307 ,-10296 ,-10281
                   ,-10274 ,-10270 ,-10262 ,-10260 ,-10256 ,-10254
                  };
            string[] sA = new string[]
          {
           "a","ai","an","ang","ao"

           ,"ba","bai","ban","bang","bao","bei","ben","beng","bi","bian","biao","bie","bin"
           ,"bing","bo","bu"

           ,"ca","cai","can","cang","cao","ce","ceng","cha","chai","chan","chang","chao","che"
           ,"chen","cheng","chi","chong","chou","chu","chuai","chuan","chuang","chui","chun"
           ,"chuo","ci","cong","cou","cu","cuan","cui","cun","cuo"

           ,"da","dai","dan","dang","dao","de","deng","di","dian","diao","die","ding","diu"
           ,"dong","dou","du","duan","dui","dun","duo"

           ,"e","en","er"

           ,"fa","fan","fang","fei","fen","feng","fo","fou","fu"

           ,"ga","gai","gan","gang","gao","ge","gei","gen","geng","gong","gou","gu","gua","guai"
           ,"guan","guang","gui","gun","guo"

           ,"ha","hai","han","hang","hao","he","hei","hen","heng","hong","hou","hu","hua","huai"
           ,"huan","huang","hui","hun","huo"

           ,"ji","jia","jian","jiang","jiao","jie","jin","jing","jiong","jiu","ju","juan","jue"
           ,"jun"

           ,"ka","kai","kan","kang","kao","ke","ken","keng","kong","kou","ku","kua","kuai","kuan"
           ,"kuang","kui","kun","kuo"

           ,"la","lai","lan","lang","lao","le","lei","leng","li","lia","lian","liang","liao","lie"
           ,"lin","ling","liu","long","lou","lu","lv","luan","lue","lun","luo"

           ,"ma","mai","man","mang","mao","me","mei","men","meng","mi","mian","miao","mie","min"
           ,"ming","miu","mo","mou","mu"

           ,"na","nai","nan","nang","nao","ne","nei","nen","neng","ni","nian","niang","niao","nie"
           ,"nin","ning","niu","nong","nu","nv","nuan","nue","nuo"

           ,"o","ou"

           ,"pa","pai","pan","pang","pao","pei","pen","peng","pi","pian","piao","pie","pin","ping"
           ,"po","pu"

           ,"qi","qia","qian","qiang","qiao","qie","qin","qing","qiong","qiu","qu","quan","que"
           ,"qun"

           ,"ran","rang","rao","re","ren","reng","ri","rong","rou","ru","ruan","rui","run","ruo"

           ,"sa","sai","san","sang","sao","se","sen","seng","sha","shai","shan","shang","shao","she"
           ,"shen","sheng","shi","shou","shu","shua","shuai","shuan","shuang","shui","shun","shuo","si"
           ,"song","sou","su","suan","sui","sun","suo"

           ,"ta","tai","tan","tang","tao","te","teng","ti","tian","tiao","tie","ting","tong","tou","tu"
           ,"tuan","tui","tun","tuo"

           ,"wa","wai","wan","wang","wei","wen","weng","wo","wu"

           ,"xi","xia","xian","xiang","xiao","xie","xin","xing","xiong","xiu","xu","xuan","xue","xun"

           ,"ya","yan","yang","yao","ye","yi","yin","ying","yo","yong","you","yu","yuan","yue","yun"

           ,"za","zai","zan","zang","zao","ze","zei","zen","zeng","zha","zhai","zhan","zhang","zhao"
           ,"zhe","zhen","zheng","zhi","zhong","zhou","zhu","zhua","zhuai","zhuan","zhuang","zhui"
           ,"zhun","zhuo","zi","zong","zou","zu","zuan","zui","zun","zuo"
          };
            byte[] B = new byte[2];
            string s = "";
            char[] c = x.ToCharArray();
            for (int j = 0; j < c.Length; j++)
            {
                B = System.Text.Encoding.Default.GetBytes(c[j].ToString());
                if ((int)(B[0]) <= 160 && (int)(B[0]) >= 0)
                {
                    s += c[j];
                }
                else
                {
                    for (int i = (iA.Length - 1); i >= 0; i--)
                    {
                        if (iA[i] <= (int)(B[0]) * 256 + (int)(B[1]) - 65536)
                        {
                            s += sA[i];
                            break;
                        }
                    }
                }
            }

            return s;
        }