Forum

Sql'de nasıl olur ?
 
Bildirimler
Hepsini Temizle

Sql'de nasıl olur ?

5 Yazılar
2 Üyeler
0 Reactions
812 Görüntüleme
(@ibrahimER)
Gönderiler: 4
Active Member
Konu başlatıcı
 

arkadaşlar merhaba mikro ile arayüz program yazıyorum linq ile şimdi şöyle bir sorum olucak stoklar var örneğin;

Stokkod :A01  Liste Sırano(bana burda iki numara ile işlem gerekiyor 2 ve20  eğer 20 varsa 20 gelicek bu arada 20 demek kampanya demek eger o urunde 20 nolu fiyat yoksa 2 gelicek )

 

 

arama yaptıgımda ;

 

A01 -1

A01 -2

A01 -3

A01 -4

A01 -5

A01 -6

A01 -20

 

geliyor ben bunu sqlde nasıl yapabilirim ? tek fiyat gostermem gerek oda 20 varsa 20 yoksa 2 nolu olanı 

şimdiden yardımlarınız için teşekkür ederim

 

 

 
Gönderildi : 14/07/2016 14:44

(@ibrahimER)
Gönderiler: 4
Active Member
Konu başlatıcı
 

malesef o şekilde çözülmedi

 
Gönderildi : 14/07/2016 16:49

(@caglarozenc)
Gönderiler: 247
Reputable Member
 

yazdığınız sorguyunun gerekli bölümünü gösterebilir misiniz ? Case When çözmesi gerekirdi.

 
Gönderildi : 14/07/2016 20:01

(@ibrahimER)
Gönderiler: 4
Active Member
Konu başlatıcı
 

merhaba yani aşağıdaki sorgu ile yazdığımda hata alıyorum 

ALTER proc [dbo].[SP]
@sto_kod nvarchar(25),
@cari_kod nvarchar(25)
as
declare @liste nvarchar(25)
select @liste=(select sto_sezon_kodu from STOKLAR where sto_kod='%'+@sto_kod+'%')
if (@liste='KAMPANYA')
BEGIN
SELECT sfiyat_listesirano,msg_S_0002, sto_birim1_ad,msg_S_0018,MERKEZ,sfiyat_listesirano,sfiyat_fiyati,msg_S_1589,dbo.CARI_HESAPLAR.cari_kod AS cari_kodu, dbo.STOK_SATIS_FIYAT_LISTELERI.sfiyat_stokkod AS stok_kodu, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod AS stok_iskonto_kodu,
dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_cari_kod AS cari_iskonto_kodu, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_uygulama_odeme_plani AS odeme, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk1_yuzde, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk4_yuzde,
dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk2_yuzde, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk3_yuzde
FROM dbo.STOK_CARI_ISKONTO_TANIMLARI INNER JOIN
dbo.CARI_HESAPLAR ON dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_cari_kod = dbo.CARI_HESAPLAR.cari_satis_isk_kod INNER JOIN
dbo.STOK_SATIS_FIYAT_LISTELERI ON dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod = dbo.STOK_SATIS_FIYAT_LISTELERI.sfiyat_iskontokod INNER JOIN
STOKLAR ON STOKLAR.sto_kod=STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod INNER JOIN STOKLAR_CHOOSE_2A_DEPOLU
ON STOKLAR_CHOOSE_2A_DEPOLU.msg_S_0078=STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod INNER JOIN STOKLAR_YONETIM ON STOKLAR_YONETIM.msg_S_0001=STOK_SATIS_FIYAT_LISTELERI.sfiyat_stokkod
where sfiyat_stokkod like '%'+@sto_kod+'%' and sfiyat_listesirano=20 AND cari_kod='%'+@cari_kod+'%'
END
ELSE
BEGIN
SELECT sfiyat_listesirano, msg_S_0002,sto_birim1_ad,msg_S_0018,MERKEZ,sfiyat_listesirano,sfiyat_fiyati,msg_S_1589,dbo.CARI_HESAPLAR.cari_kod AS cari_kodu, dbo.STOK_SATIS_FIYAT_LISTELERI.sfiyat_stokkod AS stok_kodu, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod AS stok_iskonto_kodu,
dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_cari_kod AS cari_iskonto_kodu, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_uygulama_odeme_plani AS odeme, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk1_yuzde, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk4_yuzde,
dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk2_yuzde, dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_isk3_yuzde
FROM dbo.STOK_CARI_ISKONTO_TANIMLARI INNER JOIN
dbo.CARI_HESAPLAR ON dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_cari_kod = dbo.CARI_HESAPLAR.cari_satis_isk_kod INNER JOIN
dbo.STOK_SATIS_FIYAT_LISTELERI ON dbo.STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod = dbo.STOK_SATIS_FIYAT_LISTELERI.sfiyat_iskontokod INNER JOIN
STOKLAR ON STOKLAR.sto_kod=STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod INNER JOIN STOKLAR_CHOOSE_2A_DEPOLU
ON STOKLAR_CHOOSE_2A_DEPOLU.msg_S_0078=STOK_CARI_ISKONTO_TANIMLARI.isk_stok_kod INNER JOIN STOKLAR_YONETIM ON STOKLAR_YONETIM.msg_S_0001=STOK_SATIS_FIYAT_LISTELERI.sfiyat_stokkod
where sfiyat_stokkod like '%'+@sto_kod+'%' and sfiyat_listesirano=2 and cari_kod='%'+@cari_kod+'%'
END

 
Gönderildi : 21/07/2016 19:33

(@ibrahimER)
Gönderiler: 4
Active Member
Konu başlatıcı
 

yani yapmak istediğim sorguda sfiyat_listesirano  20 veya 2 olabilir  bir urun 20 fiyatı varsa 2 fiyatı dikkate almaması şimdiden teşekkür ederim

 
Gönderildi : 21/07/2016 19:35

Paylaş: