ROW_NUMBER() fonksiyonu ile Satır Numaralarını Elde Etmek
Merhaba, sorgualam işlemlerinde bazı zamanlar sorgudan dönen değerlere her satıra bir satır numarası vermemiz gerekir bu durumda ROW_NUMBER() fonksiyonu ile sorgumuza satır numaraları ekleyebiliriz , daha da öte iç yapıdaki bir gruplamaya göre de bir satır numarası verebiliriniz , isterseniz örnekler ile bakalım daha anlaşılır oalcaktır.
Öncelikle normal şekilde sorgudan dönen değerlere bir satır numarası ataması yapalım.
Categories adında bir tablom var ve içerisinde örnek kategori kayıtları bulunmakta aşağıdaki sorgu ile her satıra bir numara atayabiliriz.
select ROW_NUMBER() OVER(ORDER BY CreatedOn desc) AS sira,* from Categories
ve çıkan sonuç aşağıdaki gibidir :
Peki bu sırayı kategorileri oluşturan kullanıcılara göre kendi içerisinde sıralatmak istersek nasıl yapabiliriz oda aşağıdaki şekilde olmalıdır ;
select ROW_NUMBER() OVER(partition by ModifiedUsername ORDER BY CreatedOn desc) AS sira,* from Categories
bununda çıktısı aşağıdaki gibi olacaktır göreceğiniz üzere her kategoriyi oluşturan kullanıcılara göre kendi içerisinde sıralama yapmakta ;