LinQ ile Sorgu Sonuçlarını Belirleme (skip ve take kullanımı)

3 views
Skip to first unread message

firhus.com yönetim

unread,
Jun 24, 2012, 9:11:35 AM6/24/12
to firhus | Mitolojik Yazılım Merkezi
Merhaba, Bu bölümde sizlere LinQ ile yapılan sorgu sonuçlarında
istenilen verilere nasıl ulaşabileceğinizi anlatacağım.

LinQ pratik ve modüler yapısıyla programcıya umulandan daha kolay
yöntemler ve metotlar sunmaktadır. Bir sorgu gerçekleştirdiğinizi
düşünün. Bu sorgu içinde bir sıralama yaptırarak belirli kayıtları
çekmek istiyorsunuz. Bunun için birden fazla sorgu yapmanız
gerekebilir.

LinQ ile tek satırda bu işlemleri hızlı ve kolaylıkla
gerçekleştirebilirsiniz.

Örnek vermek gerekirse;


hekimID hekimAdi hekimSoyadi hekimTC
0 HÜSEYİN DEMİREL 19929299919
1 HASAN AKAGÜNDÜZ 23423423422
2 HÜSEYİN AKARCALI 23232323233
3 HÜSEYİN SELVİ 23237734737

yukarıdaki gibi bir tablodan sadece hekimID numarası 2 den sonra olan
ismi "HÜSEYİN" olan, A dan Z ye sıralı verileri listeletmek
istediğimizi varsayalım.
Bunun için;

Dim bul = From element In baglanti.hekimTbls
Where element.hekimAdi = "HÜSEYİN"
Order By element.hekimAdi Ascending
Skip 1 Take 3
Select element

şeklinde bir kodlamayla işlemi istenildiği gibi gösterebiliriz.

Burada ne yaptık?

1- From element In baglanti.hekimTbls ile tablo ile bağlantı kurduk
2- Where element.hekimAdi = "HÜSEYİN" ile veri tabanında ismi
"HÜSEYİN" olan hekimleri buldurduk.
3- Order By element.hekimAdi Ascending ile A dan Z ye sıralama
yaptırdık.
4- Skip 1 ile ilk kaydı atla dedik. Burada 30 deseydik sıralanan tüm
verilerden 30.kayıttan sonrasına geçecekti.
5- Take 3 ile veri tabanında kısıtlamaya gittik. Yani sadece 3 veriyi
göster dedik.
6- Select element ile de nesneye atıfta bulunduk.

Bu veri tabanında 10binlerce kayıt olduğunu varsayarsak bu işlemin
kullanıcılara ve programcılara ne kadar kolaylık sağladığını görmüş
oluruz.

Başka bir yazıda yeniden görüşmek dileğiyle.

{ firhus | 2012


Reply all
Reply to author
Forward
0 new messages