2016-11-08 25 views
-1

我需要從姓氏,空間名字空間中間名解析名字。 例如:在Sql Server中解析名字的全名

我需要從全名'LONG,CHRISTINA F'解析'CHRISTINA'。有「」和‘CHRISTINA’和「克里斯蒂娜之間的另一空間,‘F’

我可以分析」克里斯蒂娜如果之間沒有空格「」和'克里斯蒂娜 使用之間的空間:

select LTRIM(RTRIM('LONG,CHRISTINA F',CHARINDEX(',','LONG,CHRISTINA F')+ 1,ISNULL(NULLIF(CHARINDEX('','LONG,CHRISTINA F',CHARINDEX ( '', 'LONG,CHRISTINA F ')),0),8000) - (CHARINDEX(',', 'LONG,CHRISTINA F')+ 1))))

謝謝,

+1

請將您的問題標記爲您正在使用的數據庫。還推薦了更多樣本數據和期望結果的例子。 –

+2

向我們展示你的嘗試.. –

回答

1

假設SQL Server,你應該可以做類似t的事情他的:

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 
+0

它的工作原理。謝謝! – Ice

+0

@Ice - 如果是這種情況,請將此標記爲答案(upvote/downvote箭頭旁邊的勾號)。 – sr28