Avatar billede klaske_ko Nybegynder
23. november 2007 - 19:15 Der er 8 kommentarer og
1 løsning

Jeg får konstant dubletter

Hey, jeg har fået til opgave at

"Find ud af, med hvor mange forbrydelser, der har fundet en stigning
sted i såvel 1997-1998 som i 1998-1999. Svarskemaet skal
indeholde både kategori samt overskrift."

Når jeg så skriver i 1998 at den skal være >1997, så kommer der alligevel steder hvor 1998<1997. Hvordan pokker løser jeg den opgave? Sig til hvis i skal bruge MDB filen!

Håber virkeligt I kan hjælpe mig..
Avatar billede klaske_ko Nybegynder
23. november 2007 - 19:18 #1
Glemte lige billeder af det :
http://peecee.dk/?id=80569
http://peecee.dk/?id=80570

Og MDB filen fik jeg også op nu :) :
http://peecee.dk/?id=80578
Avatar billede hossein Nybegynder
24. november 2007 - 01:29 #2
Når felt navnet er tal som 1998 el. 1997 sæt [] rundt om, her er en forslag:

SELECT STRGRP.KATAGORI, STRGRP.OVERSKRIFT,(sum([1999]) -  sum([1998]))  as [Forholdet 98 til 99], (Sum([1998]) - sum([1997])) as [Forholdet 97 til 98]
FROM (STRGRP INNER JOIN TEKSTER ON STRGRP.KATAGORI = TEKSTER.KATEGORI) INNER JOIN STRAFFE ON TEKSTER.NUMMER = STRAFFE.NUMMER
group by STRGRP.KATAGORI, STRGRP.OVERSKRIFT;
Avatar billede klaske_ko Nybegynder
24. november 2007 - 14:43 #3
Har prøvet at køre den sql den ser således ud så :
http://peecee.dk/?id=80682

Der er nogle der har minus, og nogle der ikke har, forstår ikke hvad det er for noget :(
Avatar billede klaske_ko Nybegynder
24. november 2007 - 14:46 #4
Jeg ville gerne hvis den spyttede dem ud som var steget fra 97 til 98, og intet andet, kun dem :)
Avatar billede zuschlag Juniormester
24. november 2007 - 17:05 #5
Hej
Hvis du gemmer følgende som forespørgsel1
SELECT TEKSTER.KATEGORI, TEKSTER.TEKST, STRAFFE.[1997], STRAFFE.[1998], STRAFFE.[1999]
FROM STRAFFE INNER JOIN TEKSTER ON STRAFFE.NUMMER = TEKSTER.NUMMER
WHERE (((STRAFFE.[1998])>[1997]) AND ((STRAFFE.[1999])>[1998]));

og derefter kører følgende sql

SELECT Count(Forespørgsel1.KATEGORI) AS AntalOfKATEGORI
FROM Forespørgsel1;

så får du svaret 14
VH Anders
Avatar billede klaske_ko Nybegynder
24. november 2007 - 17:08 #6
Har ikke lige prøvet det der, for kan ikke finde ud af at gemme forespørgsler, men smider den 14 rækker ud, eller bare tallet 14 ?
Avatar billede hossein Nybegynder
24. november 2007 - 17:21 #7
når det er minus betyder at der har været et faldt i den pågældende kategori. Positive tal viser stigning.
du skal vise den tilfælde hvor en kategori har haft stigning i begge perioder dvs fra 97-98 og 98-99, og nedenstående sql sætning kan gøre det:

SELECT STRGRP.KATAGORI, STRGRP.OVERSKRIFT,sum(([1998]-[1997])) AS [Stigning 97-98], sum(([1999]-[1998])) AS [Stigning 98-99]
FROM (STRGRP INNER JOIN TEKSTER ON STRGRP.KATAGORI = TEKSTER.KATEGORI) INNER JOIN STRAFFE ON TEKSTER.NUMMER = STRAFFE.NUMMER
WHERE ((([1998]-[1997])>0)) and ((([1999]-[1998])>0))
Group By  STRGRP.KATAGORI, STRGRP.OVERSKRIFT;

hvis du vil vise stigning kun i perioden 97-98 så kan du bruge dette:

SELECT STRGRP.KATAGORI, STRGRP.OVERSKRIFT,sum( ([1998]-[1997])) AS [Stigning 97-98]
FROM (STRGRP INNER JOIN TEKSTER ON STRGRP.KATAGORI = TEKSTER.KATEGORI) INNER JOIN STRAFFE ON TEKSTER.NUMMER = STRAFFE.NUMMER
WHERE ((([1998]-[1997])>0))
Group By  STRGRP.KATAGORI, STRGRP.OVERSKRIFT;
Avatar billede zuschlag Juniormester
24. november 2007 - 17:26 #8
Hej
Forespørgsel1 gir de 14 poster, hvor der er stigning både fra 97 til 98 og fra 98 til 99
Forespørgsel2 gir tallet 14
VH AZ
Avatar billede klaske_ko Nybegynder
24. november 2007 - 18:07 #9
Har fundet løsningen, tog noget af dit :) mange tak ;D
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

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