在Sql Server中从全名解析名字

时间:2016-11-08 16:58:09

标签: sql

我需要从姓氏,空间名字空间中间名解析第一个名字。 例如:

我需要解析克里斯蒂娜'从全名' LONG,CHRISTINA F'。 ','之间有一个空格。和克里斯蒂娜'和克里斯蒂娜之间的另一个空间'和' F'

我可以解析克里斯蒂娜'如果'之间没有空格,'和克里斯蒂娜' 使用:

选择LTRIM(RTRIM(' LONG,CHRISTINA F',CHARINDEX(',',' LONG,CHRISTINA F')+ 1 ,ISNULL(CHARINDEX('',' LONG,CHRISTINA F',CHARINDEX(',',' LONG,CHRISTINA F& #39;)),0),8000) - (CHARINDEX(',',' LONG,CHRISTINA F')+ 1))))

谢谢,

1 个答案:

答案 0 :(得分:1)

假设SQL Server你应该能够做到这样的事情:

DECLARE @fullName varchar(50)
DECLARE @startIndex int
DECLARE @secondIndex int
DECLARE @firstName varchar(20)

SET @fullName = 'LONG, CHRISTINA F'
SET @startIndex = CHARINDEX(',', @fullName)
SET @secondIndex = CHARINDEX(' ', @fullName, @startIndex + 2)
SET @firstName = Substring(@fullName, @startIndex + 1, @secondIndex - @startIndex)

SELECT @firstName