Oracle : 'Zählung über Partition' - Ausgabe auf der ersten Zeile des keyword allein

Habe ich Abfragen eine Tabelle, die wie folgt Aussehen.

select count(*) over (PARTITION BY offer_status) as count, name, status
from tablename

Ausgegeben werden als:

3  |  name1  |  eingetragen
3  |  name1  |  eingetragen
3  |  name2  |  ausgeglichen
1  |  name3  |  abgeschlossen
3  |  name3  |  ausgeglichen
3  |  name1  |  eingetragen
3  |  name2  |  ausgeglichen

 

Ich möchte um es zu bekommen :

3  |  name1  |  eingetragen
|  name3  |  eingetragen
3  |  name2  |  ausgeglichen
1  |  name3  |  abgeschlossen
|  name3  |  ausgeglichen
|  name3  |  eingetragen
|  name3  |  ausgeglichen

Um die Anzahl der status nur für das erste auftreten des Begriffs (der status), es ist nicht notwendig, um die Zählung wieder und wieder.

Oder können Sie mir empfehlen einen anderen Weg, um bekommen es zu tun.

SQL-Tabellen darstellen ungeordnete Sätze. Es gibt kein Konzept der "ersten Reihe", es sei denn, Sie haben eine andere Spalte, gibt die Bestellung auf. Und für den Fall, dass Sie neugierig sind, drehen die anderen Werte in NULL beeinflusst die Leistung nicht.
Ich bearbeitet die Beschreibung zu "erste auftreten"
Ich glaube nicht, dass Sie verstehen, das Konzept der "ungeordnete". Es ist nicht das erste Vorkommnis in einer SQL-Tabelle, es sei denn, definiert durch eine andere Spalte, wie z.B. eine id oder Einfügung Zeit.

InformationsquelleAutor smilyface | 2015-02-05

Schreibe einen Kommentar