SQLSql ServerT-SQL

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 :

Row-Number

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 ;

row-number-gruplanarak

Paylaş

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir