Разделенный запятыми список в SQL

Как перебрать список разделенных запятыми в SQL? У меня есть список идентификаторов, и мне нужно передать эти идентификаторы в хранимую процедуру. Я не могу изменить хранимую процедуру. Мне нужно выяснить, как выполнить SP для каждого идентификатора. Дайте мне несколько идей, я могу продолжать оттуда.

Благодарю.

1 ответ

Решение
declare @S varchar(20)
set @S = '1,2,3,4,5'

while len(@S) > 0
begin
  --print left(@S, charindex(',', @S+',')-1)
  exec YourSP left(@S, charindex(',', @S+',')-1)
  set @S = stuff(@S, 1, charindex(',', @S+','), '')
end

Примерь данные SE: иди по струне

Другие вопросы по тегам