AccessTr.neT

Tam Versiyon: sorgulamada değer bulmak
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
bir veri tabanım var, araç plakaları, cinsi ve aracın durumunu belirten.
aracım kirada ise tabloda aracın durumu hanesine 1, garajda ise 2 rakamını yazıyor.
yaptığım sorguda ise bu 1 ve 2 rakamlarının yerine kirada, garajda gibi ifade yazmasını istiyorum.
örnek:
16 ab 111 kirada (1)
16 ab 112 garajda (2)
16 ac 114 kirada (1)

yardımcı olabilirseniz memnun olurum.
SORUNUN ÇÖZÜMÜNÜ KENDİM BULDUM.
sorgulamada yeni bir alan tanımlıyorum
DURUM: IIf([ARACIN_DURUMU]>"1";"GARAJDA";"KİRADA")

sorgulamayı çalıştırdığımda, eğer ARACIN_DURUMU hanesi "1" den büyükse yeni tanımlanmış olan DURUM alanına "GARAJDA", değilse "KİRADA" yazıyor.

ilgilenen arkadaşlar bunu başka bir amaçla, mesela: öğrenci 50 üzerinde not almışsa GEÇTİ, 50 nin altında not almışsa KALDI olarak kullanabilirler.
Sn. gogoli01,
Sorduktan sonra çözümünüzü de kendinizin bulması hoş olmuş.

Yazdığınız kod doğru çalışır. Ama bu tür durumlarda,
bence bilmeniz gereken bir kaç nokta var.

* Eğer tablonuzda ARACIN_DURUMU alanı Sayı olarak tanımlanmışsa,
Sayıları tırnak içinde olmadan kontrol etmelisiniz.
Kod:
DURUM: IIf([ARACIN_DURUMU]>1;"GARAJDA";"KİRADA")

* ARACIN_DURUMU kontrolünü ">" yerine "=" yapmak daha doğru olur.
Kod:
DURUM: IIf([ARACIN_DURUMU]=1;"KİRADA";"GARAJDA")

* ARACIN_DURUMU hanesinin 1 ve 2 'den farklı olma ihtimali varsa,
iç içe IIF ile kontrol koyabilirsiniz.
Kod:
DURUM: IIf([ARACIN_DURUMU]=1;"KİRADA";IIf([ARACIN_DURUMU]=2;"GARAJDA";"Diğer Durum"))

* Eğer ARACIN_DURUMU hanesi sayı ise 1 ve 2 'den daha fazla ardışık seçenek var ise (1,2,3,4,5 vb..)
Choose fonksiyonu da kullanılabilir.
Kod:
DURUM: Choose([ARACIN_DURUMU];"KİRADA";"GARAJDA";"3.Durum";"4.Durum";"5.Durum")