首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

根据大写字母来截取字符串某些值,该怎么解决

2012-05-20 
根据大写字母来截取字符串某些值表中有某个字段来记录名字的拼音,现在显示时要按用户的要求显示格式如Chun

根据大写字母来截取字符串某些值
表中有某个字段来记录名字的拼音,现在显示时要按用户的要求显示格式


Chun Xia Song 要显示成 Song C.X
LiXie 要显示成 Xie L
Chen Xi Ou Yang  要显示成 Ou Yang C.X  


要怎么转换?名字有四个字时比较特别

[解决办法]

SQL code
--写个函数试试GOIF OBJECT_ID('Fun_test')IS NOT NULLDROP FUNCTION Fun_testGOCREATE FUNCTION Fun_test(@name varchar(20))RETURNS VARCHAR(20)ASBEGIN  --IF CHARINDEX(' ',@name)>0    --begin     declare @str varchar(20)     set @str=''     declare @firstname varchar(10)     declare @midname varchar(10)     declare @lastname varchar(10)     select @firstname=(left(@name,charindex(' ',@name)-1))     select @midname=(substring(@name,charindex(' ',@name)+1,charindex(' ',@name,charindex(' ',@name))))     select @lastname=reverse(left(reverse(@name),len(@name)-3-charindex(' ',@name,charindex(' ',@name))))     select @str=@lastname+' '+left(@firstname,1)+'.'+left(@midname,1)     return @str    --endENDgoGOCREATE TABLE #TEST(NAME VARCHAR(20))INSERT #TESTSELECT 'Chen Xi Ou Yang' UNION ALLSELECT 'Chun Xia Song'SELECT dbo.Fun_test(NAME) AS NEMAE FROM #TEST/*NEMAEOu Yang C.X Song C.X*/ 

热点排行