Hallo *,
ich hänge jetzt schon mehrere Tage an einer Abfrage und scheine mich so verrannt zu haben, dass ich das Licht am Ende des Tunnels nicht mehr sehe.
Meine Anwendung pflegt Maschinen-Reparaturen.
Nun möchte ich alle Reparaturen der Maschinen auflisten und Abfrage auf der Störungen auf die TOP 10 Maschinen mit den meisten Störungen ermitteln
Anbei mein Ansatz. Wobei dieser kein Ergebnis liefert, da meine Unterabfrage den Count(*) und T.WONUM zurück liefert.
Ohne die Unterabfrage liefert mir der Aufruf leider alle Reparuren, aller Maschinen zurück.
Vielleicht findet jemand einen Moment, um einen Blick drauf zu werfen, um einen Gedankenanstoß zu liefern.
SELECT
WOP.CLOSEDATE AS Arbeitsdatum
,WOP.EQNUM AS Maschine
,WOEQLIST.SERIALNUM AS MaNr
,WOMETER.METERREADING AS BetrStd
,WOP.ITEMNUM AS Sachnmummer
,WOP.DESCRIPTION AS Bezeichnung
,(WOP.TOTALUNITCOST / WOP.QTYUSED) AS Einzelpreis
,WOP.QTYUSED AS Ausg
,WO.TASKDESC AS Bemerkung
,WOE.EMPCODE AS ArbnNr
,WO.WONUM AS Referenz
,(SELECT COUNT(*) FROM WOP
INNER JOIN WO ON WOP.WONUM = WO.WONUM WHERE WOP.CLOSEDATE > 1900-01-01 AND WO.WONUM = WOP.WONUM)AS Zaehler
FROM
WO
INNER JOIN
WOP ON WO.WONUM = WOP.WONUM
LEFT JOIN
WOEQLIST ON WO.WONUM = WOEQLIST.WONUM
LEFT JOIN
WOMETER ON WO.WONUM = WOMETER.WONUM
LEFT JOIN
WOE ON WO.WONUM = WOE.WONUM
WHERE WOP.WONUM IN
(SELECT TOP 10 T.WONUM, COUNT(*) as MyCount FROM WOP AS T WHERE T.WONUM = WOP.WONUM GROUP BY T.WONUM ORDER BY MyCount DESC ) AND WOP.CLOSEDATE > 1900-01-01
ORDER BY Zaehler, WOP.CLOSEDATE DESC
Vielen Dank im voraus für Eure Unterstützung.
Gruß
Dirk