Как разрезать строку на части в SQL по некоторому символу
Функция позволяет извлечь часть строки из другой строки по разделителю.
Пример использования:
select dbo.str_splitPart('111,222,333', ',', 1) -- 111
select dbo.str_splitPart('111,222,333', ',', 2) -- 222,333
@part - либо 1, либо 2
ALTER function [dbo].[str_splitPart] (
@value nvarchar(max),
@divider nvarchar(12) = ',',
@part int = 2
)
returns nvarchar(max) as
begin
declare @res nvarchar(max) = ''
if(CHARINDEX(@divider,@value)>0) begin
if(@part=1) begin
set @res = LEFT(@value,CHARINDEX(@divider,@value)-1)
end else
begin
set @res = RIGHT(@value,LEN(@value) - CHARINDEX(@divider,@value) -(LEN(@divider)-1))
end
end else begin
if(@part=1) begin
set @res = @value
end else
begin
set @res = ''
end
end
return @res
end
Что еще посмотреть по SQL Server
SQL. Как работать с датами в SQL Server
SQL Server. Как переносить на новую строку в строковой переменной в SQL
SQL. Вывод разметки HTML в сыром виде (в виде тегов) в SQL
SQL. Как привести дату в строку в нужный формат в SQL Server
SQL. Как использовать select from Хранимка
SQL. Как прописью написать число в SQL
SQL. Как массово залить данные в таблицу БД через CSV (Excel)
Выгода от использования Falcon Space
В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Нужна бесплатная консультация?
Планируете делать веб-проект?
- Шаг 1. Создать концепт проекта
- Шаг 2. Получить оценку бюджета (КП)
- Шаг 3. Заключить договор
- Шаг 4. Создать совместно техническое задание
- Шаг 5. Поэтапная реализация проекта