Hinzufügen eines Prozent-Spalte zu MS Access Abfrage
Ich versuche, fügen Sie eine Spalte, die berechnet Prozentsätze der verschiedenen Produkte in den MS-Access-Abfrage. Im Grunde ist das die Struktur der Abfrage, die ich versuche zu erreichen:
Produkt |
Gesamt |
Prozentsatz
Prod1 |
15 |
21.13%
Prod2 |
23 |
32.39%
Prod3 |
33 |
46.48%
Produkt |
71 |
100%
Die Formel für das finden der Prozent, die ich benutze ist: ([Gesamt-Q von einem Produkt]/[Summe aller Produkte])*100, aber wenn ich versuche den Ausdrucks-generator verwenden (da meine SQL-Kenntnisse sind basic) in MS Access zu berechnen..
= [CountOfProcuts] /Summe([CountOfProducts])
..Ich erhalte eine Fehlermeldung "kann Nicht Aggregatfunktion in GROUP BY-Klausel.. (und der Ausdruck geht hier)". Ich habe auch versucht die option mit zwei Abfragen: eine, die berechnet nur die Summen, und eine weitere, zuerst verwenden, um die Berechnung der Prozentsätze, aber das Ergebnis war das gleiche.
Werde ich dankbar sein wenn jemand mir helfen kann, mit dieser.
wie hast du einen empfohlenen Bearbeiten mit dem OP-code 2 Minuten vor es war als Kommentar hinzufügen?
InformationsquelleAutor Stiliyan Vasilev | 2013-10-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie alle, aber die Letzte Zeile Ihrer gewünschten Ausgabe mit dieser Abfrage.
Da die Abfrage nicht über eine
JOIN
oderWHERE
Zustand, es gibt eine cross join zwischen der Tabelle und der einzelnen Zeile der Unterabfrage.Wenn Sie die Letzte Zeile aus deiner Frage Beispiel, können Sie
UNION
die Abfrage mit einem anderen gibt das fabriziert Zeile, die Sie wollen. In diesem Beispiel habe ich eine benutzerdefinierte Dual-Tabelle die ausgelegt ist, enthalten stets eine und nur eine Zeile. Aber Sie ersetzen könnte, eine andere Tabelle oder Abfrage, die eine einzelne Zeile zurückgibt.Danke. (1) ich fühle mich ein bisschen Kreuz heute. (2) und (3) Ja, mir auch. Aber manchmal sind Sie noch wollen, was Sie wollen. 🙂 Antworten basieren auf Urteil fordert, und ein anderes mal, ich haben könnte, antwortete anders ... vielleicht sogar näher an die Antwort, die Sie nicht vorlegen.
InformationsquelleAutor HansUp