[Gelöst] SQL-Abfrage in ACCESS

Für allgemeine Fragen zur Programmierung mit PureBasic.
Micro
Beiträge: 59
Registriert: 28.12.2006 17:44
Computerausstattung: Intel 10850K, 16GB RAM
div. andere Rechner...
Wohnort: Nordkirchen

[Gelöst] SQL-Abfrage in ACCESS

Beitrag von Micro »

Hallo Leute,

ich habe eine Frage zu Access. Folgende Tabellen habe ich:

Auftrag mit den Feldern:
id, kdnr, nummer, status, datum

Daten:
1 3 101 1 1386599353
2 2 102 1 1386624365

Auftragdetail mit den Feldern:
id, auftrag, artikelnummer, anzahl, artikelbezeichnung, artikelbeschreibung, preis

Daten:
1 101 10 1 "Artikel 1" "Bezeichnung 1" 150.42
2 101 11 1 "Artikel 2" "" 12.9
3 102 12 2 "Artikel 3" "" 15.9
4 102 13 2 "Teil 1" "" 19.9
5 102 14 1 "Teil 2" "" 17.9

In Bezug stehen diese beiden Tabellen mit den Feldern: Auftrag.nummer und Auftragdetail.auftrag



Jetzt möchte ich eine SQL-Abfrage erstellen, wo jeder Auftrag nur einmal aufgelistet ist, aber die Gesamtsumme des Auftrages unter berücksichtigung der Menge zusammengerechnet wird.

Das Ergebnis sollte so aussehen:
KdNR, Autrag, status, datum, preis
3, 101, 1, 1386599353, 163.32
2, 102, 1, 1386624365, 89.50

Ich bekomme es in Access leider nicht hin, tu mich ein wenig schwer mit dem MS-Denken :-(

Wer kann mir da helfen oder hat zumindest einen Lösungsansatz für mich?


Viele Grüße aus dem Münsterland
Frank
Zuletzt geändert von Micro am 10.12.2013 16:34, insgesamt 1-mal geändert.
PB 5.73 LTS - Win 11 Pro / 64Bit
Benutzeravatar
Kiffi
Beiträge: 10725
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: SQL-Abfrage in ACCESS

Beitrag von Kiffi »

Code: Alles auswählen

SELECT Auftrag.kdnr, Auftragdetail.auftrag, Auftrag.status, Auftrag.datum, Sum(Auftragdetail.preis) AS Summevonpreis
FROM Auftrag INNER JOIN Auftragdetail ON Auftrag.nummer = Auftragdetail.auftrag
GROUP BY Auftrag.kdnr, Auftragdetail.auftrag, Auftrag.status, Auftrag.datum;
Grüße ... Kiffi
a²+b²=mc²
Micro
Beiträge: 59
Registriert: 28.12.2006 17:44
Computerausstattung: Intel 10850K, 16GB RAM
div. andere Rechner...
Wohnort: Nordkirchen

Re: SQL-Abfrage in ACCESS

Beitrag von Micro »

Hi Kiffi,

vielen Dank für Deinen Vorschlag. Ich habe es gerade ausprobiert, soweit funktioniert es.

Dummerweise habe ich dann festgestellt, dass die Menge der einzelnen Auftragsdetails nicht mit berechnet werden. Teilweise kann es nämlich vorkommen, dass ein Artikel auch mehr verkauft worden ist :-)

Ich hab' leider keine Ahnung, wie ich das hinbekommen könnte.

Würdest Du mir dabei auch bitte noch einmal helfen?

Vielen Dank!
PB 5.73 LTS - Win 11 Pro / 64Bit
Benutzeravatar
Kiffi
Beiträge: 10725
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: SQL-Abfrage in ACCESS

Beitrag von Kiffi »

Micro hat geschrieben:Teilweise kann es nämlich vorkommen, dass ein Artikel auch mehr verkauft worden ist :-)
verstehe ich nicht. Kannst Du das ein wenig genauer erklären?

Die Gesamt-Summe der Auftragsdetails wird ja korrekt ausgegeben.

Grüße ... Kiffi

// Edit: Oder soll die Anzahl auch berücksichtigt werden?
a²+b²=mc²
Micro
Beiträge: 59
Registriert: 28.12.2006 17:44
Computerausstattung: Intel 10850K, 16GB RAM
div. andere Rechner...
Wohnort: Nordkirchen

Re: SQL-Abfrage in ACCESS

Beitrag von Micro »

Jo, genau. Die Anzahl ist es. Hab aber gerade mal ein paar Minuten Pause gemacht und 2x das Haus umrundet. Jetzt bin ich auf die Lösung gekommen:

Code: Alles auswählen

SELECT
Auftrag.kdnr, Auftragdetail.auftrag, Auftrag.status, Auftrag.datum, Sum(Auftragdetail.preis * Auftragdetail.anzahl) As Summevonpreis
FROM Auftrag
INNER JOIN Auftragdetail
ON Auftrag.nummer = Auftragdetail.auftrag
GROUP BY Auftrag.kdnr, Auftragdetail.auftrag, Auftrag.status, Auftrag.datum;
Bei der SUM-Abfrage einfach mit der Anzahl multiplizieren, dann klappt das!


Ich danke Dir (wieder einmal), Du hast mir wieder sehr geholfen! Vielen Dank!


Gruß Frank
PB 5.73 LTS - Win 11 Pro / 64Bit
Antworten