![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выкусить последнее слово в строке [MSSQL]
ivc_andr © (2004-12-29 12:16:00)Подскажите пожалуйста, можно ли простым запросом выкусить последнее слово в Char-поле?
Nikolay M. (2004-12-29 17:38:00) [1]
> Соловьев © (29.12.04 14:34) [7]
Можно сделать REVERSE и обойтись без цикла. Ессесно, если разделитель слов - пробел.
DECLARE
@s CHAR(255)
SELECT
@s = ' 12 34 56 78 '
SELECT
RIGHT (RTRIM (@s), PATINDEX ('% %', REVERSE (RTRIM (@s))) - 1)
Соловьев (2004-12-29 14:34:00) [2]А что такое простой запрос?
declare
@last_word varchar(100),
@pos int,
@line varchar(255)
set @line = :param
set @pos = (select PATINDEX('% %', @line))
while @pos > 0
begin
set @line = (select substring(@line,@pos+1,len(@line)))
set @pos = (select PATINDEX('% %', @line))
end
select @line
DimaK (2004-12-29 14:22:00) [3]можно, но для этого надо написать функцию в MSSQL...
Nikolay M. (2004-12-29 12:29:00) [4]
> msguns © (29.12.04 12:27) [4]
> Наверное, что-то броде этого
:)
А если без пробелов "Папа пил,хулиганил ,дрался ."?
msguns (2004-12-29 12:27:00) [5]Наверное, что-то броде этого
CharField -> ResultDataSet
'Мама мыла раму' 'раму'
'Папа бухал самогон' 'самогон'
Nikolay M. (2004-12-29 12:22:00) [6]Может "закусить"? Или "надкусить"? :)
А если по-русски?
Ega23 (2004-12-29 12:22:00) [7]Простым - нельзя.
Что такое "Простое слово"?
Ega23 (2004-12-29 12:22:00) [8]В смысле "последнее слово"?