Access 97 Gruppierung

Ich habe eine größere Datenbank mit Adressen (ca. 5000). In einem Datenbankfeld steht das Alter.
Jetzt möchte ich mit einer Abfrage nachschauen, wieviele jünger als 30 sind, wieviele zwischen 30-39, 40-49,50-59 und 60 Jahre und mehr.

Wie mache ich das am besten?

Gruß, Christian

Hatte das Prob auch, anstatt mir jetzt das Hirn zu verrenken und eine irre if-Verschachtelung oder choose-Verschachtelung aufzubauen, habe ich einfach beim Öffnen des Reps folgenden Code angelegt:

Private Sub Report_Open(Cancel As Integer)
Dim db As DATABASE
Dim RS As Recordset, rsStruktur As Recordset
Set db = CurrentDb()
Set RS = db.OpenRecordset(„SELECT DateDiff(‚yyyy‘,[Geburtstag],Date()) AS [Alter] FROM Mitarbeiter WHERE (((IsDate([Geburtstag]))=True));“, DB_READONLY)

DoCmd.RunSQL „UPDATE Altersstruktur SET Altersstruktur.Anzahl = 0;“

Set rsStruktur = db.OpenRecordset(„Altersstruktur“, dbOpenDynaset)
RS.MoveFirst
BeginTrans
Do
Select Case RS!Alter
Case 20 To 29
rsStruktur.FindFirst „AltersstrukturID=1“
rsStruktur.Edit
rsStruktur!Anzahl = rsStruktur!Anzahl + 1
rsStruktur.Update
Case 30 To 39
rsStruktur.FindFirst „AltersstrukturID=2“
rsStruktur.Edit
rsStruktur!Anzahl = rsStruktur!Anzahl + 1
rsStruktur.Update
Case 40 To 49
rsStruktur.FindFirst „AltersstrukturID=3“
rsStruktur.Edit
rsStruktur!Anzahl = rsStruktur!Anzahl + 1
rsStruktur.Update
Case 50 To 59
rsStruktur.FindFirst „AltersstrukturID=4“
rsStruktur.Edit
rsStruktur!Anzahl = rsStruktur!Anzahl + 1
rsStruktur.Update
Case 60 To 100
rsStruktur.FindFirst „AltersstrukturID=5“
rsStruktur.Edit
rsStruktur!Anzahl = rsStruktur!Anzahl + 1
rsStruktur.Update
End Select

RS.MoveNext
Loop Until RS.EOF
CommitTrans
Set rsStruktur = Nothing
Set RS = Nothing
Set db = Nothing

End Sub

Kannst das ja jetzt noch ausbauen.

CU
Alex

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Noch ne Idee:
Erstell eine Abfrage als Basis:
SELECT DateDiff(„yyyy“,[Geburtstag],Date()) AS [Alter], Count(DateDiff(„yyyy“,[Geburtstag],Date())) AS AnzahlvonAlter
FROM Mitarbeiter
WHERE (((IsDate([Geburtstag]))=True))
GROUP BY DateDiff(„yyyy“,[Geburtstag],Date());

Wenn die den Namen „AlterBasis“ hat, dann liefert Dir folgende Abfrage das gewünschte Ergebnis:
SELECT Left([Alter],1) & „0-“ & Left([alter],1)+1 & „0“ AS Altersgruppe, Sum(AlterBasis.AnzahlvonAlter) AS [Summe von AnzahlvonAlter]
FROM AlterBasis
GROUP BY Left([Alter],1), Left([Alter],1) & „0-“ & Left([alter],1)+1 & „0“;

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

nimm den aabfrageassistenten und definiere neu efelder in den die bedingungen wie folgt eingestellt sind:
funktion = anzahl oder count
bedingung = >19 AND [Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]