Mysql Toplam Hesaplama Sorgusu Yardım
-
Arkadaşlar merhaba,
Bir sorgum var, işin içinden çıkamıyorum. Yapmaya çalıştığım şey, satılan ürünlerin günlük, haftalık ve aylık olarak toplam satış tutarını hesaplamak.
select SUM(satilan_urunler.satilma_adedi * satilan_urunler.satis_fiyati) as toplam
from satilan_urunler, urunler
where urunler.kime_ait = '143' and
urunler.id = satilan_urunler.urun_id AND
satilan_urunler.satis_iptal = 0 AND
satilan_urunler.sql_date >= LAST_DAY(CURRENT_DATE) + INTERVAL 1 DAY - INTERVAL 1 MONTH AND
satilan_urunler.sql_date < LAST_DAY(CURRENT_DATE) + INTERVAL 1 DAYToplayıp çarpacağı değerler bu;
Fakat bunun sonucu olarak bana vermiş olduğu cevap ise;Fieldim varchar. Decimal yapıyorum bu sefer noktalar virgüller istediğim gibi bu syntax da olmuyor.
yardımcı olursanız sevinirm.
Castaway tarafından 28/May/20 01:07 tarihinde düzenlenmiştir -
float yap sütun tiplerini rahat et.
-
ontedi bunu yazdı
float yap sütun tiplerini rahat et.
hocam bu değerleri float olarak kayıt edemiyorum ama. yada ben mi bir yerde yanlış yapıyorum, anlamadım
-
bun denesen olurmu?
select * from ( select * from urunler ) as a left join (select urun_id,sum(satilma_adedi * satis_fiyati) as gun_toplam,sum(satilma_adedi) as gun_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 day) group by urun_id ) as gun_satis on a.id=gun_satis.urun_id left join (select urun_id,sum(satilma_adedi * satis_fiyati) as hafta_toplam,sum(satilma_adedi) as hafta_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 week) group by urun_id ) as hafta_satis on a.id=hafta_satis.urun_id left join (select urun_id,sum(satilma_adedi * satis_fiyati) as ay_toplam,sum(satilma_adedi) as ay_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 month) group by urun_id ) as ay_satis on a.id=ay_satis.urun_id
-
wert bunu yazdı
bun denesen olurmu?
select * from ( select * from urunler ) as a left join (select urun_id,sum(satilma_adedi * satis_fiyati) as gun_toplam,sum(satilma_adedi) as gun_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 day) group by urun_id ) as gun_satis on a.id=gun_satis.urun_id left join (select urun_id,sum(satilma_adedi * satis_fiyati) as hafta_toplam,sum(satilma_adedi) as hafta_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 week) group by urun_id ) as hafta_satis on a.id=hafta_satis.urun_id left join (select urun_id,sum(satilma_adedi * satis_fiyati) as ay_toplam,sum(satilma_adedi) as ay_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 month) group by urun_id ) as ay_satis on a.id=ay_satis.urun_id
hocam öncelikli olarak emeğin için teşekkürler. toplam değerleri boş verdi bu. ama ben hayatımda böyle bir mysql sorgusu görmedim :D
-
tabloları paylaşabileceğin biryer varmı?
büdüt şimde gördüm varcharmış değerler
select * from ( select * from urunler ) as a left join (select urun_id,sum(satilma_adedi * replace(replace(satis_fiyati,'.',''),',','.')) as gun_toplam,sum(satilma_adedi) as gun_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 day) group by urun_id ) as gun_satis on a.id=gun_satis.urun_id left join (select urun_id,sum(satilma_adedi * replace(replace(satis_fiyati,'.',''),',','.')) as hafta_toplam,sum(satilma_adedi) as hafta_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 week) group by urun_id ) as hafta_satis on a.id=hafta_satis.urun_id left join (select urun_id,sum(satilma_adedi * replace(replace(satis_fiyati,'.',''),',','.')) as ay_toplam,sum(satilma_adedi) as ay_satis from satilan_urunler where satis_iptal = 0 AND sql_date > date_add(now(),interval -1 month) group by urun_id ) as ay_satis on a.id=ay_satis.urun_id