Arithmetisches Mittel der drei höchsten Werte

Hallo,
ich möchte möglichst in einer Abfrage das arithmetische Mittel der drei höchsten Werte aus zwölf Einzelwerte (Monatswerte) bilden.
Dieser soll dann als neuer Ausdruck in eine Spalte der Abfrage zurückgegeben werden.

Dazu muss ich:

  1. Die drei höchsten Werte identifizieren
  2. Diese drei Werte addieren
  3. Durch drei subtrahieren
  4. Den gebildeten Wert idealerweise in eine Spalte der Abfrage zurückgeben.

Ich habe da ein ziemliche Brett vor dem Kopf und dreh mich im Kreis…
In MS Excel wäre das mit den Standardfunktionen [Max1(); Max2(), Max3()…] kein nenneswertes Problem.
Es ist bloß zwingend notwendig, das dieser Werte innerhalb von MS Access gebildet wird.

Wenn es nicht anders geht, wäre auch eine VBA-Lösung gern angenommen.

Hoffentlich könnt Ihr mir weiterhelfen.

Viele Grüße
Jimmy

Hallo,

leider kenne ich keine Möglichkeit, unter Access die Aggregatsfunktionen SUM und TOP zu kombinieren - sonst wäre es leicht:

SELECT (SUM(TOP 3 Zahl)) - 3 AS [ERGEBNIS]
FROM Tabelle
ORDER BY (SUM(TOP 3 Zahl)) DESC;

Doch das funktioniert leider so nicht !!!

Man kann aber den Umweg über 2 Abfragen machen:

Abfrage1:

SELECT TOP 3 Spalte
FROM Tabelle
ORDER BY Spalte DESC;

Abfrage2:
SELECT (Sum(Abfrage1.Spalte)) - 3 AS [Ergebnis]
FROM Abfrage1;

Ich hoffe, das ist Dein gewünschtes Ergebnis.

Gruss,
Dietmar