sagen, dass ich einen Datensatz wie diese:Wie gruppiert man nach einem Feld in Oracle?
MANAGER | USER | NUM1 | NUM2 | NUM3
---------|--------|--------|--------|-------
Bob | Jane | 9 | 88 | 2
Bob | Jane | 34 | 32 | 52
Bob | Jane | 32 | 111 | 9
Bob | Rick | 64 | 1 | 102
Bob | Rick | 12 | 41 | 16
Bob | Rick | 4 | 13 | 20
Bob | Mark | 87 | 1 | 333
Bob | Mark | 342 | 41 | 16
Bob | Mark | 54 | 813 | 6
Wie Sie die Anzahl Spalten alle verschieden sehen können, sind die Manager immer das gleiche sind, und der Benutzer wird zu wiederholen.
Ich möchte nach Benutzer gruppieren, so dass nur eine Spalte pro Benutzer angezeigt wird.
Also der letzte Datensatz wird wie folgt aussehen:
MANAGER | USER | NUM1 | NUM2 | NUM3
---------|--------|--------|--------|-------
Bob | Jane | 9 | 88 | 2
Bob | Rick | 64 | 1 | 102
Bob | Mark | 87 | 1 | 333
ich so etwas laufen möchte:
SELECT MANAGER, USER, NUM1, NUM2, SUM(NUM3) AS NUM3
FROM MYTABLE
GROUP BY USER
Dieser Code wird nicht funktionieren, da Sie von allen Aggregaten zum Gruppieren Funktionen. Ich möchte keine Aggregatfunktionen für die anderen Spalten verwenden, da sie die Werte für NUM1 und NUM2 ändern. Gibt es einen Weg dazu? Wer weiß, was ich dafür tun kann?
Ihre Beschreibung und Beispieldaten stimmen nicht überein. –
Warum 'sum (num3)'? Ihr endgültiger Datensatz enthält nur eine Zeile aus den ursprünglichen Daten, ohne eine Aggregation, die nicht mit Ihren Angaben übereinstimmt. War "eine Spalte pro Benutzer" "eine Zeile ..."? Wenn du eine Zeile willst, wie wirst du entscheiden, welche? –
GordonLinoff, es war nur ein zufälliges Beispiel. @Alex Poole, Sie haben Recht, wie wird die Entscheidung getroffen, welche zu behalten? Ich versuche, einen Datensatz zu reproduzieren, den jemand anders gemacht hat, aber mit einer anderen Tabelle mit verschiedenen Feldern. Mit dieser Tabelle bekomme ich diese unerwünschten Ergebnisse. Aber ich habe meine Abfrage in SSRS gestellt, die die Gruppierung durchführen kann, und sie hat nur die erste Zeile ausgewählt, was nicht korrekt ist. Also nicht sicher was ich machen soll. – Zolt