Sqlserver’da bazı zamanlar ihtiyaca göre sıralı bir listeye ihtiyac duyabiliriz kimi zaman identity alan için kullanılabilir kimi zaman sıralama ve benzeri farklı işlemleri için Row number fonksiyonuna ihtiyaç duyabiliriz bu makalemizde row number fonksiyonunun kullanımını göreceğiz.
Row Number fonksiyonunu kullanarak yeni bir kolonda değerin 1’den başlayıp birer birer artan kolon oluşturabiliriz şimdi bir örnek ile tablomuzdaki 10 kaydın 3 ile 10 arası kayıtlarını çekebileceğimiz bir sorgu hazırlayalım.
SQL Kodumuz
1 2 3 4 5 6 | WITH SiraliUrunler AS ( SELECT ROW_NUMBER() OVER (ORDER BY ProductID) [Row], * FROM Production.Product ) SELECT * FROM SiraliUrunler WHERE Row BETWEEN 3 AND 10 |
Üstteki örneğimizdede görüldüğü gibi SiraliUrunler adındaki Sirali tablomuzdan Sanal olarak oluşturulan Row adındaki sıralı listemizin bulunduğu kolondan faydalanıp 3 ile 10 arasındaki kayıtların gelmesini sağlayacağız.