Avatar billede lo Nybegynder
25. juni 2004 - 11:12 Der er 20 kommentarer og
1 løsning

Sammenligning af checkmarks

Hejsa!
Jeg har en db med ca. 3000 poster. På hver post er der et "bør"-felt og et "er sket" felt som checkmarks (dem med flueben). Faktisk er der 12 gange de to felter. Et sæt for hver måned.
Nu vil jeg gerne have en forespørgsel, der giver mig de poster, hvor markeringen i "bør"-feltet og "er sket"-feltet IKKE stemmer overens. Dvs. der er 12 gange 2 felter på hver post, der skal sammenlignes.
Hvordan gør jeg det? Og kan man overhovedet lave en forspørgsel, der sammenligner på checkmarks?
/LO
Avatar billede kabbak Professor
25. juni 2004 - 12:25 #1
SELECT Tabel1.dato, Tabel1.bør, Tabel1.ErSket
FROM Tabel1
WHERE (((Tabel1.ErSket)<>[bør]));
Avatar billede lo Nybegynder
25. juni 2004 - 13:07 #2
Takker. Jeg kan ikke lige gennemskue.... vil den så give mig en liste over alle de poster, hvor der er uoverensstemmelse? Der er jo sådan set 12 gange 2 kolonner, hvor der kan være uoverensstemmelser i (pr. post i db'en) Lister den så også hvad for nogle af de 12, det er?
Gør jeg overhovedet mig selv forståelig....jeg er ikke engang sikker på, at jeg helt selv ville kunne forstå det ;)
V.H. LO
25. juni 2004 - 13:40 #3
Hvad med noget i denne stil:

Select * From Dintabel Where Bør01<>ErSket01 Or Bør02<>ErSket02 Or Bør03<>ErSket03 Or Bør04<>ErSket04 Or Bør05<>ErSket05 Or Bør06<>ErSket06 Or Bør07<>ErSket07 Or Bør08<>ErSket08 Or Bør09<>ErSket09 Or Bør10<>ErSket10 Or Bør11<>ErSket11 Or Bør12<>ErSket12

Navngivningen af Bør01-Bør12 og ErSket01 til ErSket12 skal selvølgelig ændres til dine egne feltnavne ligesom tabelnavnet.
Avatar billede lo Nybegynder
25. juni 2004 - 13:58 #4
Det ser mere ud som noget jeg kan bruge :o) Kan desværre ikke nå at arbejde mere på det nu, så jeg ser på mandag, hvordan det ser ud og om det virker...
Men det er jo lige før, at man ikke kan holde weekend i ro, af bar spænding over, om det nu også gør det... ;)
25. juni 2004 - 14:05 #5
Du går for meget op i dit arbejde :o)

God weekend :o)
Avatar billede lo Nybegynder
29. juni 2004 - 11:47 #6
Hmmm det virkede så ikke :(
De felter, der skal sammenlignes er ja/nej-felter i tabellen, men vises som checkmarks i formularen.
Når jeg prøver at køre SQL'en siger den, at der mangler en parameter værdi for de forskellige måneder.....?!? Den er ellers tastet ind, præcis som de skal.
Nogle ideer
Avatar billede lo Nybegynder
29. juni 2004 - 11:48 #7
?
/LO (der fik trykket send for tidligt)
Avatar billede lo Nybegynder
29. juni 2004 - 11:57 #8
Det ene sæt overskrifter indeholder en bindestreg, kan det give problemer?
29. juni 2004 - 12:06 #9
Hvis der er bindestreg, mellemrum eller andre specialtegn (dog ikke _) skal der kantede parenteser omkring feltnavnene:
Select * From [Dintabel] Where [Bør01]<>[ErSket01] Or [Bør02]<>[ErSket02]....
Avatar billede lo Nybegynder
29. juni 2004 - 12:40 #10
ok....
Nu er det meget mærkeligt.....faktisk
De navne der indeholdt bindestreg, brokker den sig ikke længere over, men dem, der indeholder underscore og alligevel er sat i firkantede paranteser, beder den nu om en parameterværdi på.....
Avatar billede lo Nybegynder
29. juni 2004 - 12:59 #11
Nu harjeg prøvet at slette de firkantede paranteser rund om de navne, der inde holder underscore, men den beder stadig om en parameterværdi.  Hvis jeg ny trykker ok til det, alle 12 gange, kommer den med en sortering....desværre synes jeg bare ikke, at det ser rigtigt ud....på nuværende tidpunkt burde alle mine poster nemlig komme med på sådan en forespørgsel, da jeg ikke har afkrydset i "er sket" feltet endnu.....
/LO
29. juni 2004 - 13:03 #12
Når den beder om parameterværdi, så kan du være sikker på, at det er fordi der er tastet noget forkert. Når du bare trykker OK, så indsættes en blank, hvorfor sorteringen selvfølgelig bliver forkert.

Konklusionen er, at feltnavnene MÅ være forkerte! Er du sikker på, at alle de 12 feltnavne er med i den/de tabeller, som er med i den øverste del af forespørgselsgeneratoren?
Avatar billede lo Nybegynder
29. juni 2004 - 13:04 #13
Juhuuu nu virker det....det viste sig, at der havde sneget sig en stavefejl ind, fra dem der tidligere har arbejdet med databasen.....hvordan skal man også kunne vide, at Februar, skal staves uden R i midten??????
/LO
29. juni 2004 - 13:06 #14
*LOL*. Hvis det havde været min datter på 3½ år, som havde defineret tabellerne, så havde hun nok også glemt et "R" i februar ;o)
Avatar billede lo Nybegynder
29. juni 2004 - 13:09 #15
Hæ hæ....det vil jeg undlade at fortælle videre til dem, der har defineret de tabeller....;)
Takker for hjælpen!
Avatar billede lo Nybegynder
29. juni 2004 - 13:11 #16
Lige et ekstra spørgsmål..kan jeg lave forespørgslen sådan, at den kun viser de måneder, der er uoverensstemmelse i, og så nøglen og et referencenr?
29. juni 2004 - 13:21 #17
Hmm...sådan som tabellen er bygget op, kan du ikke umiddelbart skule de måneder, som 'går godt'.

tabellen burde måske have været delt op i 2 tabeller, hvor hver måned således blev en post i stedet for en kolonne. Derved ville du automatisk kun få de måneder som var forskellige. Men det er nok en større omstrukturering der skal til :o(
Avatar billede lo Nybegynder
29. juni 2004 - 13:24 #18
Ja det lyder lidt omfattende.....
Det ville også være ok, hvis det kun var månederne, der blev vist...men alle data for de enkelte poster bliver vist, så man skal langt ud på arket for at finde de relevante oplysninger....
Men takker for svarene anyway :o)
29. juni 2004 - 13:37 #19
Du kan sagtens begrænse antallet af kolonner, men bare ikke dynamisk. Erstat * med feltnavne adskilt at komma.
Prøv denne:

Select ID, Referencenr, Jan, Feb, Mar, apr From [Dintabel] Where [Bør01]<>[ErSket01] Or [Bør02]<>[ErSket02]....
Avatar billede lo Nybegynder
29. juni 2004 - 14:05 #20
Ja, det ser ud til, at det er lige det, jeg skulle bruge..... Takker mange gange igen :o)
29. juni 2004 - 14:06 #21
Anytime :o)
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