Avatar billede larsny Nybegynder
11. december 2004 - 16:50 Der er 1 løsning

TSQL loop?

Hej jeg er ny til TSQL så dette er sikkert et simpelt spørgsmål :)

Jeg skal lave en loop i min Stored Procedures..
Dvs (tror ikke jeg skal bruge "uniqueidentifier" men måske "vachar" eller hvad?):

I min SP henter jeg:
@GruppeID uniqueidentifier
---> som så indeholder noget i stilen af:
"{et_eller_andet},{et_eller_andet},{et_eller_andet}" osv.

Så jeg skal bruge en funktion der tager denne streng og deler den op ved "," og så køre fra start til slut..

Lige som i asp:
GruppeID = Split(streng, ",")
for x = LBound(GruppeID) to UBound(GruppeID)

next

Nogen der kan hjælpe?

På forhånd tak
Avatar billede trer Nybegynder
13. december 2004 - 11:42 #1
Du kan lege med denne

declare @s varchar(100), @t varchar(10)
set @s = 'x,y,z'
// @s er altså strengen du vil parse - din gruppeid

if right(@s,1)<>',' set @s=@s+','
while @s<>'' begin
  set @t = substring(@s,1,charindex(@s,',')+1)
  set @s = substring(@s,charindex(@s,',')+3,len(@s))
  print @t
end
go

Men forvent ikke specielt god performance.

I øvrigt - placer aldrig et clustered index på unique-identifier. Det er den sikreste måde at sløve et system ned på. Check dine primær nøgler for det.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester