Avatar billede lunddata Nybegynder
30. oktober 2003 - 22:07 Der er 7 kommentarer og
1 løsning

Periodeangivelse i flere forespørgsler

Jeg har flere forespørgsler med hver deres specielle oplysninger. Disse oplysninger bliver der summeret op på i en anden forespørgsel. Dette virker ganske udmærket.Jeg kunne nu godt tænke mig at lave en opsummering for dette med samme periodeangivelse for alle forespørgsler. Hvordan kan jeg gøre det når jeg kun ønsker at angive perioden ét sted og gældende for alle forespørgsler?
Avatar billede mugs Novice
30. oktober 2003 - 22:13 #1
I den forespørgsel der opsummerer, kan du indtaste kriterier i en formular og referere til denne formular:

=[Forms]![FORMULARNAVN]![FELTNAVN]

Du skal så rette = til >= og <= eller bruge operatoren Between.

Kriteriet kan du naturligvis også indsætte i alle dine forespørgsler, men det er vel mest formålstjenstligt at nøjes med den der opsummerer.
Avatar billede terry Ekspert
31. oktober 2003 - 08:27 #2
Well it all depends where your date fields are! If you are using GROUPING then includining your dates in each of the quereies output fields will give problems, as the date will alter the result. So as I see it, without actually seeing the tables/queries, you are going to have to include the criteria for the dates in each query's WHERE, NOT the output (SELECT) fields, so as to filter which records are in the result.

And as mugs correctly says you can use >= and <= OR Between. And with dates it is always best to use yyyy-mm-dd format

EXAMPLE:

WHERE YourDate >= #2002-01-01# AND <= #2002-12-31#

OR

WHERE YourDate BETWENN #2002-01-01# AND #2002-12-31#
Avatar billede terry Ekspert
31. oktober 2003 - 13:55 #3
OR
WHERE YourDate BETWEEN #2002-01-01# AND #2002-12-31#
Avatar billede lunddata Nybegynder
31. oktober 2003 - 16:09 #4
Jeg er godt klar over at jeg kan bruge Between,men det vil altså sige som Terry skriver at når jeg grupperer i hver forespørgsel så får jeg det problem at jeg skal ind flere steder og angive Between Startdato og Slutdato?
Avatar billede terry Ekspert
31. oktober 2003 - 17:39 #5
If you are selecting ALL records, or a sub set of them WITHOUT grouping for the queries  in the (flere forespørgsler). Then you should be able to just add the date fields from these queries and then include a between in the query where you intend summing. But its VERY hard to say as we have NO idea what you are doing in your queries!

If you can send the dB with a FULL explanations as to what you are doing and what you want to do then I will see if I can find time over the weekend to take a look at it.

NOSPAMeksperten@santhell.dkNOSPAM
you need to remove NOSPAM
Avatar billede lunddata Nybegynder
31. oktober 2003 - 23:23 #6
Lidt mere forklaring: Jeg har en dB hvor jeg blandt andet registrerer elevfravær på en skole.
Jeg har en tabel med elevdata og en tabel med elevfravær. I fraværstabellen er der:
Dato og
Sygemeldt om morgenen med et afkrydsningsfelt  med Ja/nej
Fri hele dagen med et afkrydsningsfelt med Ja/nej
Fravær for enkeltlektion med tekstfelt 
Fravær hele dagen med et afkrydsningsfelt med Ja/nej

For hver af disse skal der laves en opsummering.

Jeg har på hver af disse lavet en forespørgsel med opsummering... og så samlet dette i en samlet forespørgsel med sum i et samlet skema for alle datoer.

Denne fremgangsmåde er nok uhensigtsmæssig, men virker dog for alle indtastninger. Problemet får jeg når jeg skal udvælge periode....

Til Terry: kunne du måske sende et eksempel på løsning af denne opgave, da jeg har en noget stor dB.
min email er:
pederlund@nielsen.mail.dk  (på denne adresse er der er af og til problemer med at modtage post såsom dB)-- jeg har så adressen: peder.lund.nielsen1@skolekom.dk
Avatar billede terry Ekspert
01. november 2003 - 10:56 #7
There would be no point in me sending an example to you as it is YOUR database we are having problems with and we need to know HOW this is put together so that we can help.

If I understand you correctly you are only using two tables in the queries where you are calculating Sygemeldt, Fri hele dagen, Fravær for enkeltlektion and Fravær hele dagen.

The easiest way is to make a seperate query for each "fraværstype" where you include the date interval. It is possible to do all of the calculations in one query but if you dont have much experience with SQL it can be a mouth full. So I suggest you keep it simple.

Then finally you can make one query which contains each "fraværstype" query where they are all JOINED by the primary key for "elev".
Avatar billede terry Ekspert
06. november 2003 - 20:07 #8
tak: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