Grupperinger i Access

Software d.  12. september. 2011, skrevet af Pizzadude
Vist: 922 gange.

Pizzadude
 
Redaktør
Tilføjet:
12-09-2011 16:17:55
Svar/Indlæg:
5363/442
Sidder og bøvler med nogle udtræk fra en database i Access 2007, og håber der sidder en Access kender derude :)

Problemet er egentlig meget simpelt, jeg ønsker at gruppere nogle records efter en værdi og håber man kan gøre det direkte i Access.

Det er nok nemmest at forklare via et eksempel, jeg har følgende data på nogle personer:

Navn Køn Alder Højde
Jan Mand 21 178
Peter Mand 34 181
Henrik Mand 36 172
Pia Kvinde 20 159
Mia Kvinde 26 167
Ditte Kvinde 29 165

Jeg vil nu gruppere efter alder i grupperne 20-29 og 30-39, så jeg f.eks. kan lave følgende tabel:

Aldersgruppe Køn Antal
20-29 Mand 1
20-29 Mand 2
30-39 Kvinde 3
30-39 kvinde 0

Håber jeg har forklaret mig godt nok, og at der er en der sidder med en løsning :)





Tråden blev redigeret 1 gang, sidst af Pizzadude d. 12-09-2011 16:18:21.
@ngler
 
Redaktør
Tilføjet:
12-09-2011 17:44:47
Svar/Indlæg:
4033/364
prøv at lave denne som udtryk:


Aldersgruppe: IIF([[alder] between 20 and 29;"20-29";IIF([alder] between 30 and 39;"30-30";"over 39"))

Så kan du lave en group by på denne.. Problemet er egentlig meget simpelt, jeg ønsker at gruppere nogle records efter en værdi og håber man kan gøre det direkte i Access.

Sidder desværre lige med ubuntu lige nu, så jeg kan ikke lige tjekke koden..

men finten er at man laver en IIF(statement;hvis er rigtig;hvis er forkert)..


Svaret blev redigeret 2 gange, sidst af @ngler d. 12-09-2011 17:46:57.


Pizzadude
 
Redaktør
Tilføjet:
12-09-2011 19:20:25
Svar/Indlæg:
5363/442
Det prøver jeg, tak for forslaget :)


titti
 
Overclocker
Tilføjet:
12-09-2011 19:28:05
Svar/Indlæg:
189/9
#0
Hvis det er, så kan jeg hurtig fikse en færdig database til dig.


Pizzadude
 
Redaktør
Tilføjet:
13-09-2011 08:51:48
Svar/Indlæg:
5363/442
#1 Det var lige præcis hvad jeg ledte efter - takker :)

#3 tak for tilbuddet, men jeg har en database - og det er ikke en man sådan lige ændrer i :)


@ngler
 
Redaktør
Tilføjet:
13-09-2011 10:15:39
Svar/Indlæg:
4033/364
np

men generelt kan der være en ide i at lave flere forespørgsler og bruge dem , da access hurtigt kan blive rundforvirret hvis det bliver for kompleks....


Pizzadude
 
Redaktør
Tilføjet:
13-09-2011 15:48:27
Svar/Indlæg:
5363/442
#5 ja det har du nok ret i :)

Har forresten et nyt problem, som sikkert også er ret let at løse. Jeg kunne godt tænke mig, at trække nogle data ud, og samtidig definere et nyt felt der ikke er unikt for hver record, men for en undergruppe.

F.eks. kunne det være at den kan regne gennemsnitshøjden ud for henholdsvis mænd og kvinder. Problemet er at definere at et udtryk skal gælde for en undergruppe, der omfatter mere end bare den enkelte record - håber det er til at forstå :)


@ngler
 
Redaktør
Tilføjet:
13-09-2011 16:08:33
Svar/Indlæg:
4033/364
Det nemmeste er at lave en forespørgsel som den du har nu.. (inkl. grupperne)

Så laver du en ny forespørgsel med totaler med data fra din forrige forespørgsel..

der kan du så lave en middel (gennemsnit) af din undergruppe..





Pizzadude
 
Redaktør
Tilføjet:
14-09-2011 11:36:38
Svar/Indlæg:
5363/442
#7 Som sådan er det let nok at lave det som flere forespørgsler - men hvis jeg vil lave det som en? :)


@ngler
 
Redaktør
Tilføjet:
14-09-2011 12:09:38
Svar/Indlæg:
4033/364
Du kan jo i Access skjule forespørgslerne.. Men du kan ikke lave en beregning for nogle andre grupperinger end dem du har i forespørgslen.. (i 2003 anyway)

Generelt skal man passe lidt med at lave for meget i en forespørgsel - der er mange fejlmuligheder hvis det bliver en tand for kompleks i Access.. (excel er det samme)

hvis det er imod en rigtig database (access er jo til enkeltbrug) som fx MSSQL - så kan du lave et view og bruge det i stedet for..