-將中文字符串轉換為拼音首字母的組合。
創建函數fun _ getPY(@ str nvarchar(4000))
返回nvarchar(4000)
如同
開始
聲明@ word nchar(1),@ PY nvarchar(4000)
set @ PY =‘‘
while len(@ str)》0
開始
set @ word = left(@ str,1)
-如果不是漢字,則返回原始字符。
將@ PY = @ PY+(unicode(@ word)的大小寫設置在19968和19968+20901之間
然後(從(
選擇“A”作為PY,N“ao”作為word
聯合所有選擇“B”,N“book”
聯合所有選擇“C”,N“錯誤”
聯合所有選擇‘D‘,N‘年‘
聯合所有選擇“E”和“pin”
聯合所有選擇‘F‘,N‘Kun‘
聯合全部選擇‘G‘,N‘
聯合所有選擇‘H‘,N‘N‘
union all select“J“,N“。
聯合全部選擇‘K‘,N‘
聯合所有選擇‘L‘,N‘gue‘
聯合全部選擇‘M‘,N‘
聯合所有選擇“N”,N“bang”
聯合所有選擇‘O‘,N‘Lu‘
聯合所有選擇“P”,N“曝光”
工會都選擇‘Q’,N‘Huan’
union all select‘R,N‘
聯合所有選擇‘S‘,N
union all select‘T‘,N‘
聯合所有選擇‘W‘,N‘u‘
聯合全部選擇“X”,N
union all select‘Y‘,N‘rhyme
聯合所有選擇“Z”,N“bang”
)T
其中word & gt= @ word collate Chinese _ PRC _ CS _ AS _ KS _ WS
order by PY ASC)else @ word end)
set @ str = right(@ str,len(@ str)-1)
結束
返回@PY
結束
-函數調用實例:
選擇dbo . fun _ getPY(‘中華人民共和國* * *和AAA 01‘)
/*
- -
zhrmmghgaa 01
(線路1受影響)
*/