Zusammenfassen von Datensätzen bei Abfrage

Hallo Leute,

ich bin absolut neu auf den gebiet der Datenbanken und auch der SQL abfragen. Ich habe hier eine Qracle datenbank laufen die normal mit einen Programm gefüttert und geändert wird. Es handelt sich hierbei um einen Kundenverwaltung und Bestellsystem.

Ich, möchte aber nun aus Daten aus der Datenbank abfragen. Der Aufbau sieht in etwas so aus:

Table1 (enthält die Kopfdaten zu den Bestellungen)
[ORDNR] [ORDDT] [ORDBY] [SECTION]
10001 01.04.11 555 Hardware
10005 30.03.11 555 Software
10008 20.03.11 555 Zubehoer
10009 20.03.11 556 Hardware

Table2 (enthält für die ORDNR die bestellten Artikel)
[ORDNR] [DESCR] [QTY] [PRICE]
10001 CD-ROM 2 31.15
10001 RAM 4 18.21
10001 KEYBOARD 2 52.26
10001 MAUS 9 12.33
10005 WINDOWS 2 118.15
10005 ORACLE 2 999.99
10008 KABEL 2 1.5
10008 TINTE 12 22.15
10008 GEHAEUSE 1 154.59


Ich hätte nun gerne als ergebnis meiner abfrage folgendes Bild:
Auftrags-Nr. Section Gesamtpreis
10001 Hardware 350.63
10005 Software 2236.28
10008 Zubehoer 191.74

Ich hoffe ihr könnt mir helfen. Die abfrage sollte dann auch noch nach Section separiert werden können. Aber ich denke das geht dann mit einer einfachen WHERE bedingung, hoffe ich.

Vielen Dank für eure Hilfe.

Gruß Freakster!

Was da fehlt ist eine Verbindung zwischen den einzelnen Bestellungen und der SECTION von Dir da. Ansonsten bist Du auf der Suche nach sum(qty*price) und einem GROUP BY.

Andreas

Hallo Andreas,

die beiden Tables oben waren nur beispiele. Ich habe nun 2 csv dateien angehängt mit daten aus der Datenbank, aus den beiden Tables.

Die Sache mit den SUM und Group BY hatte ich schin probiert, leider hat weder der betrag bei SUM gepasst noch wurde grupiert, es tauchten viele Bestellungen mehrfach auf.

im Table Orders sind die Bestllungen drin, bzw. die Headers dazu. Die ORGWON ist meine Auftragsnummer, STATUSDTE ist das letzte Änderungsdatum des Auftrags, WRKSTATUSCDE ist der Status des Auftrags, WRKCTRCDE und SHOPCDE ist die Abteilung in der der Auftrag ausgeführt wird.
im Table Artikel ist nun die Bestellnummer enthalten (ORGWON) die Artikelnummer (NIINPNO) die bestellte Anzahl (QTYREQUESTED) und derf Stückpreis (UNITPRICE).

Ich brauche nun in meiner Abfrage.
ORGWON
WRKSTATUSCDE
TOTALCOST (also alles Artikel*Menge für den Auftrag)

So ich hoffe nun ist besser, tut mir leid.

Gruß Freakster!

EDIT:

So ich habe nun das hier probiert:
SELECT WRKORDPART.ORGWON, SUM(WRKORDPART.UNITPRICEWRKORDPART.QTYREQUESTED), COUNT()
FROM WRKORDPART
WHERE WRKORDPART.UIC = ‘W1KKA3’
GROUP BY WRKORDPART.ORGWON

Das funktioniert hervorragend, aber nur solange nur ein table selected wird. sobald das 2 Table quasi die Auftragstabelle dazukommt, kommen nur noch wirre daten raus.
Auch wenn ich bei SELECT weitere Sachen zufüge klappts nicht mehr. Ich brauch ja noch mehr ausgaben als nur den Preis.

Bin ich echt zu doof?!

Gruß Freakster!

Bist du dir sicher, hier im richtigen Forum zu sein?

Support für Oracle gibt es direkt beim Hersteller. Hier geht es nur um PostgreSQL.

‘Wirre Daten’ hat AFAIK noch keine ORA-Nummer. Immerhin liefert es Daten, was bei Oracle nicht immer obligatorisch ist. Also bist du auch nicht zu doof :wink:
Der Fehler dürfte IMHO an der Verknüpfung der beiden Tabellen liegen, poste doch mal die Abfrage, die die wirren Daten liefert…

Gruß Uwe