根据大写字母来截取字符串某些值
表中有某个字段来记录名字的拼音,现在显示时要按用户的要求显示格式
如
Chun Xia Song 要显示成 Song C.X
LiXie 要显示成 Xie L
Chen Xi Ou Yang 要显示成 Ou Yang C.X
要怎么转换?名字有四个字时比较特别
[解决办法]
--写个函数试试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*/