Ich versuche eine Abfrage zu erstellen, um eindeutige Transaktionswerte mit dem Verkaufswert und dem letzten Datum zu erhalten.Abfrage der eindeutigen Werte mit den letzten Einträgen
Hier ist meine Frage:
select transaction, sales, max(sale_date) from xyz_table where report_date = 20160718 group by transaction, sales;
Dies ist das Ergebnis ist, dass ich bekommen: Dies ist die Beispieldaten ist:
|transaction | sales| sale_date| report_date|
|1397115220084030| 0.000144| 20160714|20160718|
|13971230534538500| 0 | 20160716|20160718|
|13973937437448300| 0.000001| 20160716|20160718|
|13976744119997000| 0.008563| 20160714|20160718|
|13976744119997000| 0.002392| 20160715|20160718|
Was ich einzigartige Geschäfte mit dem neuesten Erstverkaufstag wollte, war: Diese ist die erforderlichen Daten ein:
|transaction | sales| sale_date| report_date|
|1397115220084030| 0.000144| 20160714|20160718|
|13971230534538500| 0 | 20160716|20160718|
|13973937437448300| 0.000001| 20160716|20160718|
|13976744119997000| 0.002392| 20160715|20160718|
Ich habe versucht, max Umsatz zu tun, aber das noch nicht das richtige Ergebnis nicht geben:
select transaction, Max(sales), max(sale_date) from xyz_table where report_date = 20160718 group by transaction;
Wrong Ergebnis: Dies ist die erforderlichen Daten ein:
|transaction | sales| sale_date| report_date|
|1397115220084030| 0.000144| 20160714|20160718|
|13971230534538500| 0 | 20160716|20160718|
|13973937437448300| 0.000001| 20160716|20160718|
|13976744119997000| 0.008563| 20160715|20160718|
Bitte kann mir jemand helfen.
Dank
Sie sollten nach sale_date statt Transaktion gruppieren. Die Gruppierung nach Transaktion führt zu allen Zeilen, da die Transaktionsnummern alle eindeutig sind. Gruppierung nach Verkaufsdatum gibt nur eine Zeile für ein bestimmtes Datum zurück. – trajchevska
Verwenden Sie Hive oder MySQL? Diese sind sehr unterschiedlich. –
Sorry, dass .. es ist eine Bienenstockabfrage. – user175084