Avatar billede speder Nybegynder
19. oktober 2001 - 12:28 Der er 2 kommentarer og
1 løsning

Merge celler i Access

Hej Findes der en måde hvorpå man kan merge celler i SQL. Jeg har f.eks. følgende tabel:

Id...Val
1.....1
1.....2
1.....3
2.....4
2.....5
2.....6

Og efter at køre en afsindig smart SQL_stm, så får jeg følgende tabel med to kolonner:

Id...Val
1.....1,2,3
2.....4,5,6

M.v.h.

Søren
19. oktober 2001 - 12:43 #1
Hej Søren,

Den er lidt tricky, da du ikke ved hvor mange forskellige Val-værdier der findes.
Jeg kan ikke lige se hvordan man skal kunne lave det udelukkende i SQL.
Derimod kan man lave det i VBA, men så skal den funktion jo køres hver gang du skal lave et udtræk.
Der er ikke noget problem i at lave en krydstab, som giver dig det første skridt på vejen, men det giver bare 7 kolonner i ovennævnte eks:
TRANSFORM Min(Val) AS MinOfVal
SELECT ID
FROM DinTabel
GROUP BY ID
PIVOT Val;

Derefter skal kolonnerne så sammensættes og det er her VBA\'en kommer ind. Endvidere er du nok også nødt til at lave en temp-tabel, hvori du putter det endelige resultat.
Avatar billede nih Novice
19. oktober 2001 - 22:25 #2
Jeg er med på en lytter, idet jeg har samme problem.

Mit er løst midlertidig ved at indsætte følgende felt i din forespørgsel:
val_2: IIf(Antal([val])>2;\"*\";IIf(Antal([val])>1;(Min([val]) & \" / \" & Maks([val]));Maks([val])))

Her blander jeg SQL-min og -max, men den kan maksimalt samle 2 poster :(

Niels
Avatar billede speder Nybegynder
01. november 2003 - 13:03 #3
...
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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