Forum
Merhaba,
where kısıtı kullanımında ikinci/üçüncü paramtre girilmez ise sorgu sonucu sıfır kayıt geliyor.
Örnek:
select pa.tarih ,pa.CreateDate AktarimTarihi ,pd.id ,pd.ParselNo ,pd.PaletNo ,pd.PaketNo ,pd.TomrukKodu TomrukNo ,pd.Miktar ,pd.Uzunluk ,pd.Genislik ,pd.Alan ,pd.Grup ,pd.Kalite ,pd.Renk ,pd.Desen ,pd.Boy ,pa.Aciklama ,pd.YeniPaletNo ,pd.PaketBarkod from palet pa inner join paletDetay pd on pa.paletno=pd.paletno
where
yeniPaletNo is null
and
pd.PaletNo=@Palet_No_Giriniz
and
pd.TomrukKodu=@Tomruk_No
where tarafındaki PaletNo ve TomrukKodu parametrelerinden biriisi kullanıcı tarafından girilmez ise bu sorgu sıfır kayıt getirir.
Kısaca böyle bir sorguda her iki parametrenin de değer alması gerekmektedir. Where operatorü and 'tir.
Raporlama anında örneğin kullanıcı PaletNo'yu girer ise ama Tomruk Kodu'nu girmez ise raporun sonucu sıfır kayıt gelecektir.
Bu durumu; bu sorgu ve benzer sorgularda nasıl engellerim???
Kullanıcı TomrukKodu'nu girmez ise de PaletNo ya bağlı Kayıtların gelmesini nasıl sağlarım?
Ya da Nasıl bir yöntem izlemem lazım???
Teşekkür ederim...
Hocam sqlde orta seviye bilgim var fakat ve operatorü yerine veya kullanırsanız herhangi birisinin true olmasına karşın sorgu geriye değer döndürecektir fakat ve olursa sizinde dediğiniz gibi her ikisinin de doğru olması sonucu değer döndürecektir. veya kullanıp dener misiniz?
Merhaba,
OR operatörü olmaz.
başka bir yöntem lazım gibi.
where
yeniPaletNo is null
and
(pd.PaletNo=@Palet_No_Giriniz
OR
pd.TomrukKodu=@Tomruk_No)
Merhaba,
where kısıtı kullanımında ikinci/üçüncü paramtre girilmez ise sorgu sonucu sıfır kayıt geliyor.
Örnek:
select pa.tarih ,pa.CreateDate AktarimTarihi ,pd.id ,pd.ParselNo ,pd.PaletNo ,pd.PaketNo ,pd.TomrukKodu TomrukNo ,pd.Miktar ,pd.Uzunluk ,pd.Genislik ,pd.Alan ,pd.Grup ,pd.Kalite ,pd.Renk ,pd.Desen ,pd.Boy ,pa.Aciklama ,pd.YeniPaletNo ,pd.PaketBarkod from palet pa inner join paletDetay pd on pa.paletno=pd.paletno
where
yeniPaletNo is null
and
pd.PaletNo=@Palet_No_Giriniz
and
pd.TomrukKodu=@Tomruk_No
where tarafındaki PaletNo ve TomrukKodu parametrelerinden biriisi kullanıcı tarafından girilmez ise bu sorgu sıfır kayıt getirir.
Kısaca böyle bir sorguda her iki parametrenin de değer alması gerekmektedir. Where operatorü and 'tir.
Raporlama anında örneğin kullanıcı PaletNo'yu girer ise ama Tomruk Kodu'nu girmez ise raporun sonucu sıfır kayıt gelecektir.
Bu durumu; bu sorgu ve benzer sorgularda nasıl engellerim???
Kullanıcı TomrukKodu'nu girmez ise de PaletNo ya bağlı Kayıtların gelmesini nasıl sağlarım?
Ya da Nasıl bir yöntem izlemem lazım???
Teşekkür ederim...
Merhaba biraz geç oldu ancak benim tavsiyem,
değişkenlerinizi if else ile kontrol ederek karşılaşabileceğiniz senaryoya göre queryinizi çalıştırın mesela if blogunda palet no boş değil ise ilk once elinizdeki palet no yu kullanarak ilgili satırın tomruk nosunu select edip dönen değeri tomruk no ya eşitleyin bu durumda artık elinizde hem palet no hemde tomruk no olmuş olacaktır.
and (@tomrukNo is null or pd.TomrukKodu=@Tomruk_No ) işini görür.