Avatar billede janriis Nybegynder
22. april 2004 - 09:18 Der er 19 kommentarer og
2 løsninger

Vise antal poster oprettet i aktuelle uge og ugen før

Hej

Jeg har en kundedatabase, hvorfra jeg ønsker at vise antal oprettelser i aktuelle uge (til dato) samt oprettelser i foregående uge.
F.eks. : Antal oprettelser denne uge: 25
        Antal oprettelser i sidste uge: 30

Kan det lade sig gøre at tilføje ugenr.

Jeg har et felt i min tabel (oprettelsesdato) som jeg kan "dcounte" på.
Avatar billede jensen363 Forsker
22. april 2004 - 09:28 #1
Selvfølgelig kan du det ...

SELECT Count(tblData.oprettelsdato) AS AntalOfoprettelsesdato, Format$([oprettelsesdato],"ww") AS uge
FROM tblData
GROUP BY Format$([oprettelsesdato],"ww");

Denne grupperer antal oprettelser på ugebasis
Avatar billede jensen363 Forsker
22. april 2004 - 09:46 #2
Og her en version, hvor der udelukkende vises de sidste 2 uger

SELECT TOP 2 Count(tblData.oprettelsesdato) AS AntalOfoprettelsesdato, Int(Format$([oprettelsesdato],"ww")) AS UgeNr
FROM tblData
GROUP BY Int(Format$([oprettelsesdato],"ww"))
ORDER BY Int(Format$([oprettelsesdato],"ww")) DESC;
Avatar billede janriis Nybegynder
22. april 2004 - 10:11 #3
Hej jensen363, den første virker, men den anden giver beskeden "Datatyperne stemmer ikke overens i kriterieudtrykket"

Feltet er af typen dato og klokkeslet. Kan man rette din første løsning til, så den kun viser de sidste to uger ?
Avatar billede jensen363 Forsker
22. april 2004 - 10:20 #4
Hvis du fjerner syntaxen Int ... Altså :

SELECT TOP 2 Count(tblData.oprettelsesdato) AS AntalOfoprettelsesdato, (Format$([oprettelsesdato],"ww")) AS UgeNr
FROM tblData
GROUP BY (Format$([oprettelsesdato],"ww"))
ORDER BY (Format$([oprettelsesdato],"ww")) DESC;

Hvordan virker det så ?
Avatar billede jensen363 Forsker
22. april 2004 - 10:25 #5
Eller dette :

SELECT TOP 2 Count(tblData.oprettelsesdato) AS AntalOfoprettelsesdato, Format$([oprettelsesdato],"ww") AS UgeNr
FROM tblData
GROUP BY Format$([oprettelsesdato],"ww")
ORDER BY Int(Format$([oprettelsesdato],"ww")) DESC;
Avatar billede janriis Nybegynder
22. april 2004 - 10:37 #6
nu har jeg rettet den til så den passer med min tabel og mine felter, men den viser uge 8 og 9 (se nederst i min kommentar)  da disse er de nederste uger, men de seneste to uger er jo 16 og 17(aktuel uge) jeg er forvirret:

SELECT TOP 2 Count(tblkundeoversigt.oprettetdato) AS AntalOfoprettetdato, Format$([oprettetdato],"ww") AS UgeNr
FROM tblkundeoversigt
GROUP BY Format$([oprettetdato],"ww")
ORDER BY Format$([oprettetdato],"ww") DESC;

Nedenstående er listen af uger som genereres af dit svar af 09:28:36

Uge
10
11
12
13
14
15
16
17
2
3
4
47
48
49
5
50
51
6
7
8
9
Avatar billede jensen363 Forsker
22. april 2004 - 10:40 #7
Det er netop derfor, at :

ORDER BY Int(Format$([oprettelsesdato],"ww")) DESC;

skulle give en bedre sortering ( Int = nummerisk værdi )
Avatar billede janriis Nybegynder
22. april 2004 - 10:40 #8
Bemærk at ugerne 47-51 er fra 2003 idet registreringen startede sidste år
Avatar billede janriis Nybegynder
22. april 2004 - 11:28 #9
Hej jensen363

Ja men jeg kan jo ikke ændre feltets type, idet jeg bruger formatet dd-mm-aa, hvis det ændres til en Integer kan jeg vel bruge de værdier, som allerede er indtastet ?
Avatar billede mugs Novice
22. april 2004 - 12:36 #10
Lav et udtryk brug DatePart:

Datepart["ww";oprettelsesdato]

Lav herefter en ny forespørgsel og træk udtrykket ned i gitteret 2 gange og grupper efter på det ene og Antal på det andet.
Avatar billede mugs Novice
22. april 2004 - 12:39 #11
rettelse:

DatePart["ww";oprettelsesdato]
Avatar billede janriis Nybegynder
22. april 2004 - 13:20 #12
Hej mugs

Jeg er ikke helt med på hvad du mener, hvad skal den nye forespørgsel indeholde?
Dette er den der virker, men viser uge 8 og 9 istedet for 16 og 17.

SELECT TOP 2 Count(tblkundeoversigt.oprettetdato) AS AntalOfoprettetdato, Format$([oprettetdato],"ww") AS UgeNr
FROM tblkundeoversigt
GROUP BY Format$([oprettetdato],"ww")
ORDER BY Format$([oprettetdato],"ww") DESC;
Avatar billede jensen363 Forsker
22. april 2004 - 13:26 #13
Hej

Sorteringsproblematikken er netop årsagen til, at du skal ændre den sidste linie

ORDER BY Int(Format$([oprettetdato],"ww")) DESC;
Avatar billede janriis Nybegynder
22. april 2004 - 13:43 #14
Hej jensen363

Problemet med Order BY Int....er jo netop at mit felt "oprettetdato" ikke er en integer og derfor stemmer datatyperne ikke overens.
Avatar billede jensen363 Forsker
22. april 2004 - 13:55 #15
Skulle ikke have nogen betydning. Jeg har oprettet en tilsvarende tabel, med datoformat på samme måde, og det virker upåklageligt.

Format$([oprettetdato],"ww") viser bare ugenummeret som tekst ... tilføjelsen af Int skulle gerne omsætte dette til en talværdi som er nemmere at sortere efter
Avatar billede janriis Nybegynder
22. april 2004 - 14:06 #16
Æv det det gør det desværre alligevel, jeg får en grim popup boks med beskeden "Datatyperne stemmer ikke overens i kriterieudtrykket" når jeg prøver at køre min forespørgsel:

SELECT TOP 2 Count(tblkundeoversigt.oprettetdato) AS AntalOfoprettetdato, Format$([oprettetdato],"ww") AS UgeNr
FROM tblkundeoversigt
GROUP BY Format$([oprettetdato],"ww")
ORDER BY INT(Format$([oprettetdato],"ww")) DESC;
Avatar billede jensen363 Forsker
22. april 2004 - 14:31 #17
Uforståeligt ... zip lige basen og send den til : ose@post.dk
Avatar billede janriis Nybegynder
22. april 2004 - 14:53 #18
hej jensen363

Kan jeg desværre ikke, fortrolige data, ellers tak.
Avatar billede jensen363 Forsker
23. april 2004 - 13:28 #19
Kan du så ikke bare trække tabellen

tblkundeoversigt.oprettelsesdato

ud og maile den til mig ...
Avatar billede janriis Nybegynder
28. april 2004 - 11:38 #20
Hej i 2 jeg har desværre ikke fået det til at spille, men vil lukke tråden så den ikke hænger, må granske det lidt og vende tilbage
Avatar billede jensen363 Forsker
29. april 2004 - 09:58 #21
Du skal være velkommen en anden gang ;)
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