Извлечение n слова вперед - PullRequest
2 голосов
/ 26 июля 2010

как извлечь слова из n-го слова на сервере sql?

например.

| Описание |
| Это хорошее платье |

извлекая 4-е слово вперед, выдает «красивое платье»

Ответы [ 2 ]

4 голосов
/ 26 июля 2010
with sentences as
(
select 'short sentence' as sentence UNION ALL
select 'This is a nice dress' as sentence UNION ALL
select 'The quick brown fox jumped over the lazy dog' as sentence 
)

SELECT 
SUBSTRING(sentence,
CHARINDEX(' ', sentence,CHARINDEX(' ', sentence, CHARINDEX(' ', sentence)+1)+1),
LEN(sentence)) AS WordFourOnwards
FROM sentences
WHERE patindex('[^ ]% [^ ]% [^ ]% [^ ]%',sentence) > 0
1 голос
/ 26 июля 2010

Если вы построите метод самостоятельно, вы можете найти позицию строки для третьего пробела, а затем взять правильную строку из этой позиции.

Редактировать: комбинация charindex () и substring () и т. Д..

...