Avatar billede rodding Juniormester
19. maj 2005 - 12:00 Der er 7 kommentarer og
1 løsning

Udvælgelse af records

Forestil jer en record med følgende opbygning:

Nummer, navn, art, felt1, felt2, felt3 …..felt40

Altså 40 felter med navnet ”felt” + et nummer fra 1 – 40.

Disse 40 felter kan, vilkårligt placeret, indeholde forskellige tal.

Jeg ønsker at lave et udtræk på de records som indeholder  tallene(koden) 52, 53, 54, 55, 56 og 57 i et eller flere af de 40 felter(felt1-40).

Dvs at hvis der i felt7 står 54 og i felt33 står 52 , så skal recorden med 2 gange. F.eks tallet 54 kan dog kun forekomme i et af felterne.

Udtrækket skal indeholde: Nummer, navn, art, kode

Er der et bud på løsningen?
Avatar billede rodding Juniormester
19. maj 2005 - 13:11 #1
Jeg tænkte om man kunne kombinere en variabel med feltnavnet og så gennemløbe filen 40 gange!
Avatar billede arne_v Ekspert
19. maj 2005 - 18:09 #2
(SELECT * FROM tabel WHERE felt1 IN (52, 53, 54, 55, 56, 57))
UNION
(SELECT * FROM tabel WHERE felt2 IN (52, 53, 54, 55, 56, 57))
UNION
...
UNION
(SELECT * FROM tabel WHERE felt40 IN (52, 53, 54, 55, 56, 57))
Avatar billede arne_v Ekspert
19. maj 2005 - 18:09 #3
erstat lige UNION med UNION ALL !
Avatar billede arne_v Ekspert
19. maj 2005 - 18:10 #4
og hvis du havde haft en bedre tabel struktur så havde det været meget nemmere
Avatar billede arne_v Ekspert
28. maj 2005 - 16:21 #5
OK ?
Avatar billede rodding Juniormester
01. juni 2005 - 12:05 #6
Jeps tak, jeg havde håbet at man kunne lave med en variable for feltnavn, - men det her virker.
Avatar billede arne_v Ekspert
22. juni 2005 - 17:28 #7
så mangler du jo bare at acceptere svaret
Avatar billede rodding Juniormester
01. juli 2005 - 23:05 #8
Jeps - hermed gjort
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