randolf
Goto Top

Access Datenbank: Fehler 3122

Sie wollten eine Abfrage ausführen, die den angegebenen Ausdruck <Index> nicht als Teil der Aggregatfunktion einschließt. (Fehler 3122)

Hallo,

habe mal wieder ein Problem mit Access. Obiger Fehler taucht auf. Ich habe in der Abfrage jeweils als Funktion "Ausdruck" gewählt. Bisher lief es immer, seit dem ich Win 8 habe nicht mehr.
Wenn ich es in der Zeile ändere auf "Gruppierung" folgt eine nachfolgende Meldung bezogen auf das nächste Feld und so weiter. Gelöst wird es dadurch nicht. Was läuft falsch?

Bin mir nicvht sicher, ob es an Win 8 liegt, vorher unter XP lief die Datenbank einwandfrei.

Vielen Dank schon mal für die Hilfe.

Content-Key: 264509

Url: https://administrator.de/contentid/264509

Printed on: April 20, 2024 at 03:04 o'clock

Member: SlainteMhath
SlainteMhath Feb 25, 2015 at 12:32:40 (UTC)
Goto Top
Moin,

du hast einen Ausdruck (ein Feld) im SELECT ohne Aggregatsfunktion (SUM,AVG,MAX usw) ausgewählt und eine GROUP BY Klausel verwendet.

(Genaueres kann ich dir sagen wenn du mal das Query hier postest)

lg,
Slainte
Member: SlainteMhath
SlainteMhath Feb 25, 2015 at 12:59:35 (UTC)
Goto Top
(Query kam per PM)

Ok ich erklärs nochmal anders:
Wenn du die Gruppierung (=ORDER BY) aktiviert, musst du für jedes Feld das du nicht gruppiert aber im SELECT hast eine Aggregatsfunktion aktivieren. Aggregatsfunktionen sind Summe (SUM), Druchschnit (AVG), Minimum (MIN) usw. Das gilt auch für deinen ganzen IIF(... ) AS Blubber Konstrukte.

Das Übrigens nichts mit der Windows Version zu tun, sondern war schon immer so.
Member: Biber
Biber Feb 25, 2015 updated at 13:53:26 (UTC)
Goto Top
Moin Randolf,

so funktioniert unser Forum nicht.

Oder anders ausgedrückt, dein Beitrag ist momentan im Bereich Windows 8.

Richtiger Bereich wäre entweder "Datenbanken" oder "Privatcoaching" oder "Papierkorb".

"Privatcoaching" haben wir nicht, das entfällt also.
"Papierkorb" wäre bei nicht beantwortbaren Fragen angebracht ("Ich bekomme Fehler 3122 bei einer Abfrage, aber früher hat es funktioniert" ist eine nicht beantwortbare Frage).
"Datenbanken" wäre akzeptabel, wenn du deine nicht beantwortbare Frage in eine beantwortbare Frage überführst, also du die Query, die auf den Poller läuft, hier postest statt per PN weiterzureichen.

Bitte lass mich wissen, was die am Liebsten wäre.

Grüße
Biber
Member: SlainteMhath
SlainteMhath Feb 25, 2015 at 13:51:17 (UTC)
Goto Top
Las mal gut sein @Biber face-smile

Das ist so ein "Query" das man in der Tat lieber nicht öffentlich zeigen sollte - ausser vielleicht im Museum für (MSACCESS-)SQL-Vebrechen face-smile
Member: Biber
Biber Feb 25, 2015 updated at 14:04:55 (UTC)
Goto Top
Moin Slainthe,

ich seh es durchaus optimistischer: es mag Kollege Randolf ja möglicherweise etwas Überwindung kosten, ein eventuell suboptimales Statement hier zu posten.

Andererseits hat er doch hier als Frage gepostet "Was läuft hier falsch?" und nicht "Wie kann ich diese Fehlermeldung unterdrücken, damit der Anwender nichts davon mitbekommt?".
Also interpretiere ich gutwilllig: er will was etwas lernen, will besser werden und ist bereit, sich Ratschläge zumindest anzuhören.

Bloss dazu muss er halt den konkreten Sachverhalt liefern (oder eben sagen: "Ja nee, is' mir peinlich, haut den Beitrag in die Tonne..")

Grüße
Biber
Member: Randolf
Randolf Feb 25, 2015 at 14:51:01 (UTC)
Goto Top
Hallo Biber,

sorry, das ich es falsch zu sortiert habe, Sie haben natürlich recht, es gehört zu Datenbanken und nicht unter Windows 8.
Trotzdem bleibt es dabei, das diese Datenbank unter XP ohne Probleme lief. So komplex wie der Aufbau auch ist.
Möglicherweise ist eine Einstellung verändert worden, diesen würde ich gerne wieder richtig stellen.
Dazu müsste ich erst verstehen, was die Abfrage anstellt und womit es in Konflikt gerät.
Ich will daraus natürlich lernen, vor allen Dingen Fehler später vermeiden.
Daher der Hilferuf auf Administrator.

Was soll ich also tun?

Grüße Randolf
Member: Biber
Solution Biber Feb 25, 2015 updated at 16:33:03 (UTC)
Goto Top
Moin Randolf,

bitte poste einfach den Abfrage-Quelltext, das SQL-Statement, das den Fehler 3122 auslöst (vorzugsweise in < code > -Tags).

Dann können wir auch zielführend helfen.

Grüße
Biber
Member: Randolf
Randolf Feb 25, 2015 at 16:35:05 (UTC)
Goto Top
Moin,

habe das Problem zwischenzeitlich selber gefunden. Die Datenbank hat ein Konflikt in einer Abfrage mit einer Tabelle.
Welcher Fehler konkret vorliegt weiss ich noch nicht, versuche es aber zu umgehen.
Trotzdem schon mal vielen Dank.

Grüße
Randolf