30. oktober 2003 - 22:07Der 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?
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#
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?
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
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
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".
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.