6.08.2007

SQL 'de sira numarasi ROW_NUMBER()

SQL Server 2005 ile gelen ROW_NUMBER() fonksiyonu ile SQL Server 2000'de zaman zaman bas agritan sorgu sonuclarina sira numarasi verme isini kolaylikla cozmek mumkun.
Ornegin asagidaki ornekte. Sorgu sonucu UserID alanina gore siralanirken UserID alanina gore
verilmis bir sira numarasida sonuclara eklenecek.

Select
ROW_NUMBER() OVER(ORDER BY UserID) SiraNumarasi,
UserID,
UserName
from
User

Bu fonksiyonun guzel yanlarindan biri de sira numarasini yarattiktan sonra sonuclari baska bir alani kullanarak siralayabilecek olmaniz. yukaridaki cumleye eklenecek "order by UserName" eki ile sonuclariniz UserName gore sirali gelirken SiraNumarasi alani ise UserID'ye gore olusturulacak.

Select
ROW_NUMBER() OVER(ORDER BY UserID) SiraNumarasi,
UserID,
UserName
from
User

order by
UserName


Oldukca kullanisli

Hiç yorum yok: