Sql Case Kullanımındakı Hatam?
-
tüm müritlere selam
asagıdakı resımdekı gıbı bır tablom var ve ben urunlerı cekerken tek satırda hem urunu hemde fiyat 1 ve fiyat 2 yi gormek ıstıyorum.ama basaramadım nerde hata yapıyor olabılırım acaba
Buda sql Kodum
Select Urun_Kodu,Urun_Acıklama,Urun_Katagori,Case(Fiyat_Turu='Fiyat1') as Fiyat_1,Case(Fiyat_Turu='Fiyat2') as Fiyat_2 from Ürünler inner Join Fiyatlar
-
lazz bunu yazdı
tüm müritlere selam
asagıdakı resımdekı gıbı bır tablom var ve ben urunlerı cekerken tek satırda hem urunu hemde fiyat 1 ve fiyat 2 yi gormek ıstıyorum.ama basaramadım nerde hata yapıyor olabılırım acaba
Buda sql Kodum
Select Urun_Kodu,Urun_Acıklama,Urun_Katagori,Case(Fiyat_Turu='Fiyat1') as Fiyat_1,Case(Fiyat_Turu='Fiyat2') as Fiyat_2 from Ürünler inner Join Fiyatlar
Select Urun_Kodu,Urun_Acıklama,Urun_Katagori,Case WHEN Fiyat_Turu='Fiyat1' THEN Fiyat_1,ELSE Fiyat_Turu='Fiyat2' THEN Fiyat_2 END from Ürünler inner Join Fiyatlar Yanlış anlamamışsam sanırım bu şekilde olması lazım MSSQL de
-
hemen deneyeyım hocam
-
yok hocam olmadı
-
Olmadı derken hata nedir aşağıdaki select 2 fiyatı birden getirmez. Çektiğin datanın fiyat türü Fiyat1 ise Fiyat_1 değilse Fiyat_2 yi getirir.Bu iki tablodan kayıt çekip resmini atabilir misin ? O zaman yardımcı olabilirim. Aşağıdaki select çalışıyor. Test edildi
Select Urun_Kodu,Urun_Acıklama,Urun_Katagori
,Case WHEN Fiyat_Turu='Fiyat1' THEN Fiyat_1 ELSE Fiyat_2 END from Ürünler inner Join Fiyatlar -
Fiyat_Turu alanın sayısal bir alan fakat sen string deger ile karşılaştırıyorsun en baştaki hatayı orada yapıyorsun ikinci olarak görmek istediğin aynı anda fiyat tablosunda ki iki kayıt tek satırda mı olacak.
-
evet aynen oyle hocam
fiyatların ıcınde
fiyat 1 fiyat2 fıyat 3 dıye gıdıyor
benım ıstedıgım fıyat1 ve fıyat2 aynı saıtrda yan yana gormek
lazz tarafından 15/Kas/16 16:22 tarihinde düzenlenmiştir -
lazz bunu yazdı
evet aynen oyle hocam
fiyatların ıcınde
fiyat 1 fiyat2 fıyat 3 dıye gıdıyor
benım ıstedıgım fıyat1 ve fıyat2 aynı saıtrda yan yana gormek
senin Fiyat_Turu alanın değeri sayısal değer tipi Integer onu bir düzeltip denermisin birde @kont239 dediği gibi tablolarından örnek bir kayıt koy ona göre düzeltelim
-
hocam fıyat turu strıng
buraya yazarken onu ınteger yazmısım farketmeden
lazz tarafından 15/Kas/16 16:30 tarihinde düzenlenmiştir -
lazz bunu yazdı
evet aynen oyle hocam
fiyatların ıcınde
fiyat 1 fiyat2 fıyat 3 dıye gıdıyor
benım ıstedıgım fıyat1 ve fıyat2 aynı saıtrda yan yana gormek
O zaman case yapmana lüzum yok aşağıdaki gibi yapabilirsin eklemek istediğin filtre varsa Where koşuluna ekleyebilirsin
Select u.Urun_Kodu,u.Urun_Acıklama,u.Urun_Katagori,f.Fiyat_1,f.Fiyat_2 from Ürünler u inner Join Fiyatlar f on u.Urun_Kodu = f.Urun_Kodu
-
hocam oyle yapınca urunler ıkıser tane gelıyo