文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>sql取字符串的首字母的函数

sql取字符串的首字母的函数

时间:2010-12-08  来源:黑夜以后

create  function [dbo].[chinese_firstletter]
(
  @str nvarchar(1)
)
returns nvarchar(1)
as
begin
  declare @word nchar(1),@PY nvarchar(4000)
  set @PY=''

    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)

  return @PY
end

go

Select dbo.chinese_firstletter('福田区第五医院')

drop function chinese_firstletter

相关阅读 更多 +
排行榜 更多 +
坦克战争世界

坦克战争世界

模拟经营 下载
丛林反击战

丛林反击战

飞行射击 下载
几何飞行安卓版

几何飞行安卓版

飞行射击 下载