2016-11-08 2 views
-1

Мне нужно разобрать имя от фамилии, пространства, имени, пространства имени. Например:Проанализировать имя от полного имени на сервере Sql

Мне нужно разобрать 'CHRISTINA' от полного имени 'LONG, CHRISTINA F'. Существует пространство между «» и „CHRISTINA“ и другое пространство между „CHRISTINA“ И „F“

я могу разобрать „Christina“, если нет пространства между «» и „CHRISTINA“ с помощью:

выберите LTRIM (RTRIM (SUBSTRING («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 - если это так, отметьте это как ответ (отметьте рядом с стрелками вверх/вниз). – sr28

Смежные вопросы