Ich habe ein Beispiel dafür, wie meine Daten aussieht. Die Tabelle enthält negative Kundensalden. Jeden Tag wird ein Bericht mit einer Kundennummer generiert, die einen negativen Saldo hat. Der Bericht wird mit einem neuen Berichtdatum in meine Tabelle importiert. Gibt es eine Möglichkeit für mich, folgendes zu erreichen:Bereinigen von Daten, wo es täglich wiederholt
Zeilen am ersten Datum zurückgeben, an dem die customerID ihren maximalen ending_amount erreicht hat. Das heißt, wenn eine customerid eine ending_amount von -3.50 am Tag 10 von 20 Tagen der Daten erreicht, möchte ich, dass die Datenzeile nur am Tag 10 von 20 zurückgegeben wird und die anderen 19 Tage der Daten ignoriert werden, die dieser customerid zugeordnet sind.
Hinweise:
** - ** customerId ist ein eindeutiger Wert.
** - ** wenn start_amount <> ending_amount, zeigt dies an, dass eine Änderung in Bezug auf diesen Kontostand stattgefunden hat.
Gibt es auf jeden Fall kann ich mein Ziel erreichen, indem Sie entweder diese Tabelle aufräumen oder indem Sie eine Abfrage schreiben?
Vielen Dank für Ihre Hilfe.
Expected Data output
reportdate customerid starting_amount ending_amount
1/1/17 2 -0.00 -0.50
1/3/17 3 -0.50 -1.00
1/4/17 1 -0.50 -3.27
1/4/17 4 -0.00 -0.50
1/4/17 5 -0.50 -1.32
Beispieldaten
tbl_accountchange
reportdate customerid starting_amount ending_amount
1/1/17 1 -0.00 -0.50
1/1/17 2 -0.00 -0.50
1/2/17 1 -0.50 -0.50
1/2/17 2 -0.50 -0.50
1/2/17 3 -0.00 -0.50
1/3/17 1 -0.50 -0.50
1/3/17 2 -0.50 -0.50
1/3/17 3 -0.50 -1.00
1/3/17 4 -0.00 -0.50
1/3/17 5 -0.00 -0.50
1/4/17 1 -0.50 -3.27
1/4/17 2 -0.50 -0.50
1/4/17 3 -1.00 -1.00
1/4/17 4 -0.50 -0.50
1/4/17 5 -0.50 -1.32
Also in Ihrem Datensample was wäre die erwartete Ausgabe? –
Hallo, ich habe meine gewünschte Ausgabe hinzugefügt. Im Wesentlichen möchte ich jede Zeile des ersten Berichtsdatums zurückgeben, dass das Konto seinen maximalen Endstand innerhalb der Tabelle erreicht hat. Eine Kunden-ID sollte nicht mehr als einmal zurückgegeben werden. –