mehmetduran.com - Paylaşmak Güzeldir...
MySql'de limit ve rand Kullanımı
Sitemi MySql ile yaparken mysql'de birçok şey öğrendim. Daha doğrusu bazı şeyleri biliyordum ama hiç kullanmamıştım. Sitemde kullanarak tamamen öğrenmiş oldum. Şimdilik bunlardan rand ve limit fonksiyonlarına değineceğim. Özellikle limit fonksiyonu MySql'de olan ve benim en beğendiğim ve sitemde en çok kullandığım fonksiyon. Peki bunlarla neler yapabiliriz?

Öncelikle rand fonksiyonunu açıklayım. rand fonksiyonu bilindiği gibi veritabanında ki bilgilerden rasgele bilgi alabilmemizi sağlıyor. Kısacası rasgele kayıt getiriyor. Ayrıca bu fonksiyonu limit ile beraber kullanarak rasgele çekeceğimiz verilerin sayısını belirleyebiliriz. Örnek verecek olursak:

"select * from tablo_adı order by rand() limit 8" // rasgele olarak 8 kayıt getirecek komut.

Yani limit fonksiyonu da veritabanından kaç adet veri çekeceğimizi belirlediğimiz bir fonksiyon. Access ve Sql Server'da kaç adet veri çekeceğimizi top fonksiyonu ile yapıyoruz. Ancak bana göre top fonksiyonu MySql'deki limit kadar kullanışlı değil. Çünkü limit fonksiyonunun kullanım şekilleri var ve bu yollarla birçok işlemi çok daha rahat bir biçimde yapabiliyoruz. Mesela sitemde sayfalama işlemlerini limit fonksiyonu ile yaptım. Örnek verecek olursak;

"select * from tablo_adı limit 8" // 0. satırdan itibaren 8 veriyi getirecek komut.
"select * from tablo_adı limit 2,8" // bu komut ise 2.satırdan(veriden) itibaren ilk 8 veriyi getirecektir.

Görüldüğü gibi limit fonksiyonu ile belirli sayıdaki ve veritabanında herhangi bir sırada ki verileri böyle çekiyoruz. Sayfalama işlemi de tamamen buna dayanıyor. Sayfalama işleminde çekeceğimiz data sayısı her sayfa da aynı olacak şekilde ayarlanır sadece kaçıncı satırdan itibaren seçileceği önemlidir. Bu satırın hangi satır olacağını ise kendimiz session veya querystring yardımı ile belirleyip limit fonksiyonu ile basit şekilde sayfalama işlemi yapabiliriz. Ben sitemde bu işlemde ki değeri querystring ile  page değeriyle elde ediyorum.
Önümüzdeki günlerde sayfalama işlemi ile ilgili daha ayrıntılı bir makale yazacağım. Oradan sayfalama ile ilgili tüm detayları görebilirsiniz.
İyi Çalışmalar!
Mehmet Duran 22 Ağustos Cuma 2008 0 22192 4,2
Bookmark and Share
Bu Yazıyı Değerlendirin.
Konuyla İlgili Olabilecek Diğer Yazılar Left Join ile Çoklu Tablo Bağlama Herhangi Bir Sitenin Alexa Bilgilerini Öğrenmek jQuery Ajax ile Arama Merkezi (Uygulamam) C Sharp'ta Operatör Overloading Eğitim Tadında Etkinlik 2009 - Gazi Üniversitesi
Yorumlar
Yorum Yaz
RSS Yorum Takibi
Bu Yazı Hakkında Henüz Yorum Yapılmamış.
İsim :
Site :
Yorum :

Buradan bu yazıya ait yorumları RSS olarak takip edebilirsiniz.

Bu servis ile yazılara eklenen yorumları RSS ile takip ederek konu ile ilgili başkaları tarafından yapılan yorumları veya konuyla ilgili sorduğunuz sorulara verilen cevapları görebilirsiniz.
Başarısızlıklarınız ile soylu bir şekilde yüzleşin, başarıdan farkı kalmayacaktır.
Bölümler
Yazılar
Arşiv
Arama
Linkler
Site İçi Arama
Son Zamanlarda Ne Yapıyorum ?
İstatistikler - Araçlar - Reklam
İstatistikler
Sayaç
Mehmet Duran | mehmetduran.com | Copyright © 2009