程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> DB2中創建漢字拼音首字母的SQL函數

DB2中創建漢字拼音首字母的SQL函數

編輯:DB2教程
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<script language="vbs" src="spellcode.vbs"></script>
'獲取客戶簡稱的拼音縮寫
function getpy()
dim str
dim i
str=document.all.txtContactName.value
dim ret
for i=1 to len(str)
ret=ret&getpychar(mid(str,i,1))
next
document.all.txtSpellCode.value=ret
end function
getpychar=char
end if
end function
spellCode.vbs
'獲取漢字拼音第一字母
function getpychar(char)
dim tmp
tmp=65536+asc(char)
if(tmp>=45217 and tmp<=45252) then
getpychar= "A"
elseif(tmp>=45253 and tmp<=45760) then
getpychar= "B"
elseif(tmp>=45761 and tmp<=46317) then
getpychar= "C"
elseif(tmp>=46318 and tmp<=46825) then
getpychar= "D"
elseif(tmp>=46826 and tmp<=47009) then
getpychar= "E"
elseif(tmp>=47010 and tmp<=47296) then
getpychar= "F"
elseif(tmp>=47297 and tmp<=47613) then
getpychar= "G"
elseif(tmp>=47614 and tmp<=48118) then
getpychar= "H"
elseif(tmp>=48119 and tmp<=49061) then
getpychar= "J"
elseif(tmp>=49062 and tmp<=49323) then
getpychar= "K"
elseif(tmp>=49324 and tmp<=49895) then
getpychar= "L"
elseif(tmp>=49896 and tmp<=50370) then
getpychar= "M"
elseif(tmp>=50371 and tmp<=50613) then
getpychar= "N"
elseif(tmp>=50614 and tmp<=50621) then
getpychar= "O"
elseif(tmp>=50622 and tmp<=50905) then
getpychar= "P"
elseif(tmp>=50906 and tmp<=51386) then
getpychar= "Q"
elseif(tmp>=51387 and tmp<=51445) then
getpychar= "R"
elseif(tmp>=51446 and tmp<=52217) then
getpychar= "S"
elseif(tmp>=52218 and tmp<=52697) then
getpychar= "T"
elseif(tmp>=52698 and tmp<=52979) then
getpychar= "W"
elseif(tmp>=52980 and tmp<=53688) then
getpychar= "X"
elseif(tmp>=53689 and tmp<=54480) then
getpychar= "Y"
elseif(tmp>=54481 and tmp<=62289) then
getpychar= "Z"
else '如果不是中文,則不處理
getpychar=char
end if
end function





使用HTML實現對漢字拼音的支持(圖一)使用HTML實現對漢字拼音的支持(圖二)<style>使用HTML實現對漢字拼音的支持(圖三) 
使用HTML實現對漢字拼音的支持(圖四)使用HTML實現對漢字拼音的支持(圖五)  ruby{使用HTML實現對漢字拼音的支持(圖三)}{font-size:14px;}
使用HTML實現對漢字拼音的支持(圖六) 
使用HTML實現對漢字拼音的支持(圖四)使用HTML實現對漢字拼音的支持(圖五)  rt{使用HTML實現對漢字拼音的支持(圖三)}{font-size:11px;}
使用HTML實現對漢字拼音的支持(圖七)style>
使用HTML實現對漢字拼音的支持(圖七)<ruby>中國人民萬萬歲<rt>zhong guo ren min wan wan suirt><br>
使用HTML實現對漢字拼音的支持(圖七)博客園<rt>bo ke yuanrt>  
使用HTML實現對漢字拼音的支持(圖七)ruby>
使用ruby 和 rt 標簽可以實現注音效果,以上代碼效果如下圖:

使用HTML實現對漢字拼音的支持(圖八)
 
拼音來了

使用HTML實現對漢字拼音的支持(圖一)使用HTML實現對漢字拼音的支持(圖二)<style>使用HTML實現對漢字拼音的支持(圖三)rt{使用HTML實現對漢字拼音的支持(圖三)}{font-size:18px;}style>
使用HTML實現對漢字拼音的支持(圖六)
使用HTML實現對漢字拼音的支持(圖六)<ruby>中<rt>zhōngrt>國<rt>guórt>人<rt>rénrt>民<rt>mínrt>ruby>">


zhōngguórénmín

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved