webForumDet fria alternativet
Logga in / Bli medlem

crosstab

Databaser & SQL

2 svar · 308 visningar · startad av daniel_ra

Medlem sedan jan. 2002381 inlägg
Frågan#1

Jag har en tabell som ser ut såhär:

projektnamn; datum; timmar
Projekt ett ;2007-01-01; 14
Projekt två ;2007-01-02; 15
Projekt tre ;2007-01-03; 16

Vill få ut resultatet såhär:

Projektnamn; 2007-01-01; 2007-01-02;2007-01-03
Projekt ett 14
Projekt två 15
Projekt tre 16

Eftersom kolumnerna blir dynamiska, dvs beroende på vilka datum som finns inlagda, hur plockar jag då ut värden ur fälten om jag inte vet vad kolumnerna kommer att heta.

exempel ASP:

do until recset.eof

response.write(recset("projektnamn") & ": " & recset("?????"))

recset.movenext
loop

Medlem sedan dec. 19996 721 inlägg
#2

Det är klart att du vet vad kolumnerna kommer att heta. SQL kan inte hitta på egna namn.

Anar dock att du egentligen är ute efter ASP-kod som fixar listningen. En variant är att du skapar ett tomt recordset (med CreateObject) som du fyller på med datumkolumner, genom att loopa igenom ditt resultatset. Sedan loopar du igenom resultatet en gång till och lägger till rader i ditt skapade recordet.

Medlem sedan jan. 2002381 inlägg
#3

det jag menar är att jag inte vet på vilka datum som jag får någon träff och därför inte vet vilka datum som kommer at existera som kolumner. Men du har rätt, jag är ute efter att kunna lista resultatet.

249 ms totalt · 4 externa anrop · v20260731065814-full.14655e19
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
118 ms — ändringar (db)