Sayfayı Yazdır | Pencereyi Kapat

SQL Paging

Nereden Yazdırıldığı: Datakent
Kategori: Diğer bölümler
Forum Adı: Microsoft SQL Server
Forum Tanımlaması: Microsoft SQL Server ile ilgili soru / sorun ve paylaşım bölümü
URL: http://forum.datakent.com/forum_posts.asp?TID=1950
Tarih: 27.Nisan.2024 Saat 15:07


Konu: SQL Paging
Mesajı Yazan: turknetyazilim
Konu: SQL Paging
Mesaj Tarihi: 13.Temmuz.2010 Saat 13:33

CREATE PROCEDURE [dbo].[TumKullanicilariGetir]

 @SayfaNo int

AS

BEGIN

 

 Declare @Baslangic int;

 Declare @Bitis int;

 Declare @SayfalikKayitSayisi int;

 

 Set @SayfalikKayitSayisi=200; /* Bir sayfada listelecek olan kayıt sayısı*/

 Set @Baslangic=(@SayfaNo * @SayfalikKayitSayisi)-@SayfalikKayitSayisi+1;

 Set @Bitis=(@Baslangic+@SayfalikKayitSayisi)-1;

 

with TemUsers as

(

  Select ROW_NUMBER() over (Order by UserID DESC) KayitNo,UserID,UserName,UserSurName

   From Users(nolock) as Users

)

Select * From TemUsers Where KayitNo Between @Baslangic AND @Bitis Order By UserID Desc

END

Burada işi götüren  ROW_NUMBER() fonksiyonu.Sanırım Bu Fonksiyon SQL 2000 de yok .

sayfa numaralarınıda Kayıt sayısı üzerinden hesaplayıp oluşturabilirsiniz.
Performans konusunda sql paging süper.



Sayfayı Yazdır | Pencereyi Kapat