![]() |
Re: Datenauswertung mit SQL-Befehl?
Zitat:
Am Anfang dachte ich nicht das das so schwierig werden würde und hatte deshalb um das Prinzip zu erklären einfach Beispieldaten "erfunden". Mittlerweile sind die Daten in der Bsp. DB den wirklichen insoweit nahe als das ich weitere Felder entfernt und die richtigen Namen gegen User1/2/3 ausgetauscht habe. Als ich heute früh das zu erwartende Ergebnis definierte, habe ich natürlich danach weiter versucht das Problem selbst zu lösen (bis jetzt leider ohne Erfolg). Dabei habe ich in der Bsp.DB Abfragen geändert und mit verschiedenen Datensitutaion getestet. Dieser Stand spiegelt sich in den Daten der Bsp.DB wider. "S" bedeutet Sick "W" bedeutet Work "F" bedeutet Free Es geht also darum, festzustellen, wieviel Zyklen jemand durchgängig Krank gewesen ist. Nur unterbrochen durch "F" also Freie Tage. Also bspw. "S"/"S"/"F"/"F"/"S"/"S" wäre ein Zyklus und nicht zwei. Sorry nochmal, aber ich hoffe das es jetzt klarer geworden ist. Dirk |
Re: Datenauswertung mit SQL-Befehl?
So ein neuer Versuch...
SQL-Code:
Gruss
SELECT MONTH(a.f_date) AS monat, YEAR(a.f_date) AS jahr, a.f_name,
SUM(IIf(b.f_content = 'S', 1, 0)) AS anzahl FROM tbl_daten_v2 a LEFT JOIN tbl_daten_v2 b ON ( a.f_date = b.f_date + 1 AND a.f_name = b.f_name AND b.f_content IN ('S', 'F') AND a.f_content <> b.f_content) GROUP BY YEAR(a.f_date), MONTH(a.f_date), a.f_name ORDER BY YEAR(a.f_date), MONTH(a.f_date), a.f_name Thorsten |
Re: Datenauswertung mit SQL-Befehl?
Zitat:
1. Bis jetzt habe den Effekt das sich bei einer Änderung des Users1 die Ergebnisse des User2 und User3 mit ändern noch nicht festgestellt. 2. Leider werden bei folgendem Eintrag zwei Zyklen gezählt und nicht einer: nameID f_name f_date f_content 49 user2 13-Jan-08 W 52 user2 14-Jan-08 W 55 user2 15-Jan-08 S 58 user2 16-Jan-08 S 61 user2 17-Jan-08 F 64 user2 18-Jan-08 F 67 user2 19-Jan-08 S 70 user2 20-Jan-08 W Ich höre aber heute auch erstmal auf - mir schwillt die Birne langsam. Gruß und schönen Abend Dirk |
Re: Datenauswertung mit SQL-Befehl?
An dieser Stelle ist für reines SQL entgültig Schluss. Deine Wünsche sind zu kompliziert für SQL.
Wenn du ein ordentliches DBMS z.B. MSSQL benutzen würdest könntest du jetzt auf eine Stored Procedure zurückgreifen. Access ist dafür allerdings nicht mächtig genug. Da bleibt dir wohl oder übel nur alles selber zu machen (über deine Schleifenvariante). Sorry + Gruss Thorsten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz