So wählen Sie info aus Zeile oben?

Möchte ich noch hinzufügen einer Spalte meiner Tabelle ist wie folgt:
Dies ist nur ein Beispiel, wie die Tabelle strukturiert ist, die wirkliche Tabelle ist mehr als 10.000 Zeilen.

No_   Name       Account_Type    Subgroup     (New_Column)
100   Sales      3               
200   Underwear  0               250          *100
300   Bikes      0               250          *100
400   Profit     3                             
500   Cash       0               450          *400

Also für jedes mal, wenn ein Wert in 'Untergruppe' ich will die (New_Column), um den Wert [No_] aus der Zeile oben

No_   Name       Account_Type    Subgroup     (New_Column)
100   Sales      3               
150   TotalSales 3
200   Underwear  0               250          *150
300   Bikes      0               250          *150
400   Profit     3                             
500   Cash       0               450          *400

Gibt es Fälle, wo die Tabelle ist, wie das oben, wo zwei "Überschriften" sind oben. Und in diesem Fall möchte ich auch die erste Zeile oben (150) in diesem Fall.

Ist dies ein Fall für einen cursor oder was empfehlen Sie?

Den Daten geliefert wird, No_

--EDIT--

Ab der ersten Zeile und dann läuft Sie durch die ganze Tabelle:
Gibt es eine Möglichkeit, ich kann speichern Sie den Wert für [No_], wo [Untergruppe] ist "?
Und nach fügen Sie diese [No_] Wert in (New_Column) in jeder Zeile mit dem Wert in der [Untergruppe] Zeile.
Und wenn der [Untergruppe] - Zeile leer ist, wird der Prozess in Gang halten, das einsetzen der nächsten [No_] Wert in (New_Column), ist, dass wenn die nächste Zeile hat einen Wert in [Untergruppe]

Hier ist ein besseres Bild für das, was ich versuche zu tun:
So wählen Sie info aus Zeile oben?

  • Ich schlage vor, Normalisierung: en.wikipedia.org/wiki/Database_normalization
  • Wie definieren Sie die Zeile oben ?? SQL Server hat keine "built-in" Sortierung - es sei denn, du geben Sie explizit eine ORDER BY - Klausel, es gibt keine Sortierung - es gibt also keine Zeile über entweder....
  • Bitte erweitern Sie ein wenig mehr auf ", wo die zwei "Überschriften" oben". Bitte klären Sie sowohl 'Header' und 'oben' was. Ich versteh nicht, was du meinst. Danke!
  • Die Zeile oben in meinem Fall ist die Zeile oben ein Wert in [Untergruppe). Ich dachte an einen filter verwenden [wo Untergruppe = " ] irgendwie?
  • Tatsächlich die Frage ist wirklich nicht klar
  • Menschen sind versucht, Sie wissen zu lassen, dass Begriffe wie "oben" sind bedeutungslos in SQL, es sei denn, Sie definieren einen bestimmten Auftrag (z.B. sind Sie bestellt No_ für die Zwecke dieser Abfrage?)
  • Sorry, Sie sind bestellt von No_
  • Wollen Sie die (new_column) - Wert max(no_), wo account_type <> 0?

InformationsquelleAutor AceAlfred | 2012-01-20
Schreibe einen Kommentar