2017-02-01 3 views
0

Hallo Leute Ich versuche, die Anzahl der Türme in einer Master-Eigenschaft zu zählen .. aber ich habe Probleme beim Zurücksetzen der Zählung. Ich habe nur diesen Code.Dynamische Zeilenanzahl in SQL-Abfrage

SELECT ProjectName,T.TowerName , 
      CONVERT(NVARCHAR(2),RIGHT('00'+CAST(rank() OVER (ORDER BY T.TowerID) AS VARCHAR(3)),2)) AS TowerID 
FROM MasterProperty AS MP 
INNER JOIN Tower AS T ON Mp.MasterPropertyID = T.MasterPropertyID 

Das ist, was bekam.

This is what got.

Das, was ich brauche.

This what i need

Antwort

3

können Sie row_number Fensterfunktion verwenden:

select 
    t.*, 
    row_number() over (partition by ProjectName order by TowerId) whatIwant 
from your_table t; 
+0

Dank, die perfekt funktionieren – Alvie