从列中的nvarchar中提取第一个单词

时间:2016-06-23 02:04:34

标签: sql-server sql-server-2008

我有一些像这样的模式的原始col:

myWord xxxx xxxxxx xxxxxx xxxxxx

我会提取myWord并改变如下:

myNewWord xxxx xxxxxx xxxxxx xxxxxx.

1 个答案:

答案 0 :(得分:3)

通过搜索第一个空格(' ')来搜索第一个单词。然后使用RIGHT拆分字符串并将其连接到'myNewWord'

WITH Tbl(col) AS(
    SELECT 'myWord xxxx xxxxxx xxxxxx xxxxxx' UNION ALL
    SELECT 'first xxxx xxxxxx xxxxxx xxxxxx' UNION ALL
    SELECT 'sample xxxx xxxxxx xxxxxx xxxxxx'
)
SELECT  *,  
    NewCol = 'myNewWord' + RIGHT(col, LEN(col) - CHARINDEX(' ', col) +1)
FROM Tbl