---
title: "SP insert av kommaseparerad sträng"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/47605-sp-insert-av-kommaseparerad-sträng"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Brimba"
published: "2002-07-10T08:17:10.000Z"
updated: "2002-07-10T09:33:47.000Z"
replies: 1
views: 211
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/47605-sp-insert-av-kommaseparerad-sträng"
---

# SP insert av kommaseparerad sträng

## #1 — Brimba, 2002-07-10T08:17Z

Hej!

Om jag har en sträng "1,2,11,23" och vill sätta in det i en tabell, hur gör jag då?

Alltså ovanstående sträng skall resultera i 4 nya poster, och inte en ny post.

Permalänk: https://www.webforum.nu/p/47605

## #2 — LarsG, 2002-07-10T09:33Z

Finns inga bra färdiga funktioner så vitt jag vet. 

```
declare @csv varchar(40)
declare @i,@s,@l int
declare @v int

set @i = 0
set @s = 1
set @l = len(@csv)
while @i < len(@csv)
begin
    set @i = @i + 1
    if  substring(@csv,@i,1) = ','
    or @i = @l
    begin
          if  @i = @l 
              set @v = cast(substring(@csv,@s,@i-@s + 1) as int)
          else 
              set @v = cast(substring(@csv,@s,@i-@s) as int)
          insert into t values(@v)
          set @s = @i + 1
   end 
end
```

Eftersom det är otestat så kan det säkert finnas något fel-
T.ex. att det skall vara +1 eller -1 i substring

Permalänk: https://www.webforum.nu/p/716283

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/47605-sp-insert-av-kommaseparerad-sträng
