sp_executesql N' select * from (select top 10 * from (select top 15 * from TblTablo order by Id ASC) a order by Kolon1 DESC) b order by Kolon1 ASC';
Top10 - Ekranda geri dönecek kayıt sayısını gösterir. Top15 ise başlangıç indisini. Bu Sorguda 15. kayıttan başlayarak 10 kayıt getirilmesini sağlamaktadır..
Aynı Kodun C# ile fonksiyon olarak sıralanması;
private String PrepareQuery(String SiralanacakKolon, Boolean Azalan, Int32 SayfaIndex, Int32 SayfadakiKayit, Int32 KayitSayisi)
{
Int32 DonecekKayitSay = SayfadakiKayit;
Int32 BaslanangicSayisi = SayfadakiKayit * (SayfaIndex + 1);
if (BaslanangicSayisi > KayitSayisi)
{
DonecekKayitSay -= (BaslanangicSayisi - KayitSayisi);
}
return String.Format(
@" sp_executesql N’
select * from
(select top {0} * from
(select top {1} * from Customers order by {2} {3}) a
order by {2} {4}) b
order by {2} {3}’;",
DonecekKayitSay,
BaslanangicSayisi,
SiralanacakKolon,
Azalan ? "ASC" : "DESC",
Azalan ? "DESC" : "ASC");
}
Hiç yorum yok:
Yorum Gönder