2016-05-06 5 views
0

Ich habe an einer Übung für die Schule gearbeitet, die eigentlich einfach sein sollte. Aus irgendeinem Grund kann ich nicht genau herausfinden, wo ich falsch gelaufen bin. Ich war eine Weile dabei, um vielleicht etwas Einfaches zu übersehen. Ich habe etwas Erfahrung mit Datenbanken und habe sqlite früher heute in einer App implementiert, aber der Zugang wirft mich auf eine Schleife! Jede Hilfe wird sehr geschätzt.Erstellen und Berechnen von Feldern in Access

Anfahrt:

eine Beziehung zwischen der tblEmployee Tabelle erstellen und die tblDepartment Tabelle sowie zwischen dem tblEmployee und der tblSale Tisch. Stellen Sie sicher, dass die referenzielle Integrität in beiden Beziehungen durchgesetzt wird. Erstellen Sie eine Abfrage in der Entwurfsansicht mit den Tabellen tblEmployee, tblProduct, tblSale und tblSaleDetail. Hinzufügen der ersten, letzten und aktiven? Felder (in dieser Reihenfolge) zur Abfrage. Nehmen Sie die folgenden Änderungen an der Abfrage vor: Nur aktive Mitarbeiter anzeigen. Berechnen Sie in der ersten leeren Spalte ein neues Feld, Gesamtumsatz (Stückpreis * Menge) für jeden aktiven Mitarbeiter. Nur Mitarbeiter mit mehr als 300,00 $ im Gesamtumsatz anzeigen. Berechnen Sie ein neues Feld, Gesamtumsatz (Gesamtumsatz - (Coupon * Menge)) für jeden aktiven Mitarbeiter. Summieren Sie die Felder Einzelpreis, Menge, Gutschein, Gesamtumsatz und Gesamtumsatz. Zeigen Sie den ersten, letzten, Gesamtumsatz und Gesamtumsatz in den Abfrageergebnissen an.

Access Setup

enter image description here

Wenn ich die Abfrage laufen

enter image description here

Warum Gesamtumsatz nicht aus dieser Gleichung bevölkert ist?

Auch, ich bin ein wenig unklar, wo die> 300,00 hinzufügen, um auf Mitarbeiter Verkäufe zu filtern.

+0

Können Sie die SQL-Anweisung, die Sie in der Entwurfsansicht erstellt? Vorzugsweise eine Säuberungsversion davon ... – Leviathan

Antwort

1

Das Problem hier ist nicht die total sales Spalte, es ist, dass Sie auf ein berechnetes Feld total sales beziehen, wenn Sie eine Spalte mit dem Namen erstellen.

Total Sales wird nur berechnet, sobald die Abfrage ausgeführt wurde, aber total revenue möchte wissen, was der Wert ist, bevor die Abfrage ausgeführt wird.

Eine Abhilfe für dieses ist die gleiche Berechnung zu verwenden:

total revenue: ([Quantity]*[UnitPrice])-([coupon]*[quantity]) 

Eine andere Lösung ist es, eine Abfrage zu erstellen, die total sales berechnet. Sie können diese Abfrage dann in diese einfügen und als Unterabfrage verwenden.

Wie für die "> 300 für Mitarbeiterverkäufe". Ich denke, die folgende kann Arbeit:

Ich nehme an, das durch die 2 Dezimalstellen ein Geld-Wert und nicht eine ‚Anzahl der Verkäufe‘ Wertes. Daher würde ich eine neue Spalte hinzufügen.

SumOfSales: sum([tblSales].[quantity]*[tblSales].[UnitPrice])

  • Kriterien:> 300.00
  • Show: unticked
+0

Du hast vollkommen Sinn gemacht und mich dumm gemacht. Tausend Dank ! – JayD

Verwandte Themen