Ich habe eine Abfrage, an der ich arbeite, und ich möchte eines der Felder erhöhen und den Zähler neu starten, wenn ein Schlüsselwert anders ist.Wie in einer Select-Abfrage inkrementieren
Ich weiß, dass dieser Code nicht funktioniert. Programmatisch ist das, was ich will ...
declare @counter int, @id
set @counter = 0
set @id = 0
select distinct
id,
counter = when id = @id
then @counter += 1
else @id = id
@counter = 1
... mit dem Endergebnis etwas wie folgt aussehen:
ID Counter
3 1
3 2
3 3
3 4
6 1
6 2
6 3
7 1
Und ja, ich bin mit SQL2K stecken. Ansonsten würde row_number() funktionieren.
auf die Abhängigkeit Was ist in Ihrer Abfrage verfügbar? Vielleicht hilft die Row_Number()? – reallyJim
@reallyJim: Wenn sie SQL2K verwenden, wie die Tags vorschlagen, dann ist 'ROW_NUMBER' nicht verfügbar. – LukeH
@LukeH TOTALLY diesen Punkt verfehlt! – reallyJim