AccessTr.neT

Tam Versiyon: sayısal kutucuklarda sorgu yapma işlemi
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2 3 4
Hala 2003 kullanan pek çok üye var uygulamanızı eklerken 2003 versiyonunu da koyabilseydiniz ben de yardımcı olabilirdim. bayramda ekranlardayım Img-grin
Sn Okileturc Merhabalar....
Sn Blackeagle'nin örneğini 2003 olarak ekledim.
Saygılar...
Teşekkürler sn Benremix
Ben de tam bu problemlerle ilgili
konu başlığı hazırlıyordum ( anladığım kadarı ile )
İpucu : Sorguda Null değerler
Bir sorgu oluşturun ve Sql ini aşağıdaki gibi yapın
SELECT ögrenci.ad, ögrenci.soyad, ögrenci.fiziknotu, ögrenci.kimyanotu, ögrenci.matematiknotu
FROM ögrenci
WHERE (((Nz([fiziknotu])*1)>=(IIf([Forms]![sorgu_frm]![fiziknotu_srg_txt]<>"",[Forms]![sorgu_frm]![fiziknotu_srg_txt],"0"))) AND ((Nz([kimyanotu])*1)>=(IIf([Forms]![sorgu_frm]![kimyanotu_srg_txt]<>"",[Forms]![sorgu_frm]![kimyanotu_srg_txt],"0"))) AND ((Nz([matematiknotu])*1)>=(IIf([Forms]![sorgu_frm]![matematiknotu_srg_txt]<>"",[Forms]![sorgu_frm]![matematiknotu_srg_txt],"0"))));
ve deneyin. Sorgu_frm açık olmalı..

Not: sorguda boş alanlara değer atama ile ilgili olarak kullanılan IIF fonksiyonu yerine Sn Okileturc hocamın belirttiği gibi NZ fonksiyonu kullanılmıştır.

Bu uygulamada asıl olan, sorgudaki boş değerlerin "0" olarak getirilmesinin yanı sıra ölçüt alanına yazdığımız deyimde de form üzerinde boş bırakılan alanın değerinin "0" olarak belirlenmesinin önemidir.
Ben örneği de ekleyeyim. İnceleyin lütfen.
(17/11/2010, 13:57)BlackEagle yazdı: [ -> ]Bir sorgu oluşturun ve Sql ini aşağıdaki gibi yapın
SELECT ögrenci.ad, ögrenci.soyad, ögrenci.fiziknotu, ögrenci.kimyanotu, ögrenci.matematiknotu
FROM ögrenci
WHERE (((Nz([fiziknotu])*1)>=(IIf([Forms]![sorgu_frm]![fiziknotu_srg_txt]<>"",[Forms]![sorgu_frm]![fiziknotu_srg_txt],"0"))) AND ((Nz([kimyanotu])*1)>=(IIf([Forms]![sorgu_frm]![kimyanotu_srg_txt]<>"",[Forms]![sorgu_frm]![kimyanotu_srg_txt],"0"))) AND ((Nz([matematiknotu])*1)>=(IIf([Forms]![sorgu_frm]![matematiknotu_srg_txt]<>"",[Forms]![sorgu_frm]![matematiknotu_srg_txt],"0"))));
ve deneyin. Sorgu_frm açık olmalı..

Not: sorguda boş alanlara değer atama ile ilgili olarak kullanılan IIF fonksiyonu yerine Sn Okileturc hocamın belirttiği gibi NZ fonksiyonu kullanılmıştır.

Bu uygulamada asıl olan, sorgudaki boş değerlerin "0" olarak getirilmesinin yanı sıra ölçüt alanına yazdığımız deyimde de form üzerinde boş bırakılan alanın değerinin "0" olarak belirlenmesinin önemidir.
Ben örneği de ekleyeyim. İnceleyin lütfen.
Gerçekten çok teşekkür ederim.. tam istediğimi yapmışsınız.. anlaması da çok kolay, asıl yaptığım çalışmada da uyguladım, hiç bir sorun olmadı.. çok çok teşekkürler.. sadece bir şey merak ediyorum : sorguda alan kısmına Nz([fiziknotu])*1 yazarak ne demek istediniz mantığı nedir ?.. yani mesela orada ki 1 yerine başka bi rakam yazabilirmiyiz..çok tşkler iyi bayramlar...
Nz fonksiyonu ile boş alana 0 değeri atamasını sağlamaktayız, ancak bu arada mutlaka bir işlem gerekmektedir. Nz([matematiknotu]) şeklinde kullanıldığında herhangi bir değer atamayacaktır. Fakat *1 ile işleme tabi tutarak sonucun 0 olması sağlanır. Bu değeri *2 yaparsanız bu kez değeri 0 dan farklı olan değerler 2 ile çarpılacak ve sonuçlar hatalı çıkacaktır. Belki anlatımım bilimsel olmamıştır Img-grin Umarım açıklayabilmişimdir.
Sayfalar: 1 2 3 4