Oracle поиск подстроки в строке
Автор Roman Novikov задал вопрос в разделе Другие языки и технологии
Как в SQL (в контексте Oracle) строку разделить на подстроки через разделитель? и получил лучший ответ
Ответ от Ирина В[гуру]
С Oracle не работаю, поэтому не знаю, что там есть, а в TSQL можно.
1) Делим на 2 строки, до и после разделителя:
SET @p=CHARINDEX(';',@MyText)
SET @str1=SUBSTRING(@MyText,1,@p-1)
SET @str2=LTRIM(SUBSTRING(@MyText,@p1+1,LEN(@MyText)-@p-1))
Можно делать в цикле, а можно написать функцию, которая вернет таблицу с кусками, а к ней обращаться, как обычно к таблицам.
2) Набирать в переменную:
SET @MyText=''
SELECT @MyText=@MyText+[TextField]+';' FROM [MyTable] WHERE ...
Можно также использовать в SELECT, такую конструкцию:
FOR XML PATH(''),type).value('.','nvarchar(max)')
Получается просто поток символов, но ИМХО это только для TSQL