Skip to main content

AccessTr.neT


İlişkilendirilmiş Tabloda Hesaplama Hk.

İlişkilendirilmiş Tabloda Hesaplama Hk.

#1
Merhabalar,

Ekli veritabanında 2 tablo bulunuyor,
tbl_Sales ve tbl_Logistic

Her iki tabloda da siparisKodu ortak;
sipariş kodu üzerinden iki tabloyu ilişkilendirerek bir sorgu oluşturudum,
daha sonra [ToplaMiktar]-[ToplaSevk] formülü ile Kalan adında bir alan oluşturdum.


yalnız sorguyu açmak isterken ekli ekran görüntüsündeki hata mesajlarını veriyor,
sebebi neden kaynaklanabilir?

2. olarak Sevk alanında boş olan kayıtlarda kalan miktar hesaplanmıyor.


destekleriniz için şimdiden teşekkürler,

iyi çalışmalar.
.rar Database7.rar (Dosya Boyutu: 62,73 KB | İndirme Sayısı: 1)
truhi, 29-09-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#2
Yapmak istediğiniz nedir? Tam açıklar mısınız, sorgu zaten hatalı ama sanırım mantığı da tam anlamıyoruz yapıdan.
Cevapla
#3
(Dün, 19:36)atoykan yazdı: Yapmak istediğiniz nedir? Tam açıklar mısınız, sorgu zaten hatalı ama sanırım mantığı da tam anlamıyoruz yapıdan.

Hocam tblSales sayfasındaki "sipariş koduna" göre sevk miktarlarını getirmek,

sonra satış' dan ne kadar sevk edilmiş ne kadarı sevk edilmemiş bunları öğrenmek

teşekkürler,
truhi, 29-09-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#4
sorgunuz
SELECT tbl_Sales.SiparisKodu, Sum(tbl_Sales.Miktar) AS ToplaMiktar, Sum(tbl_Logistic.Sevk) AS ToplaSevk, Sum(tbl_Sales.Miktar) - Sum(tbl_Logistic.Sevk) AS Kalan
FROM tbl_Sales
LEFT JOIN tbl_Logistic ON tbl_Sales.SiparisKodu = tbl_Logistic.SiparisKodu
GROUP BY tbl_Sales.SiparisKodu;
şeklinde olmalı. tbl_sales ve tbl_logistics tablolarını SiparisKodu üzerinden birleştimek için LEFT JOIN kullanmalısınız. Bu her siparişin tbl_sales tablosundaki tüm kayıtlarının alınmasını ve tbl_logistics tablosundaki eşleşmeyen kayıtların da null olarak döndürülmesini sağlar. Böylece istediğiniz sipariş koduna göre gruplanmış olarak tüm kayıtların miktar ve sevk toplamlarını alarak kalanı hesaplayabilirsiniz.

Sorularınızdan vardığım sonuç şu Sevgili @truhi = Sorgular ile ilgili eksikleriniz var. JOIN, LEFT JOIN, RIGHT JOIN, TRANSPOSE gibi karışık görünen sorguların yanı sıra tüm temel sorgulamaları, işleyişlerini, syntaxlarını iyice incelemelisiniz. Bunlara çok iyi hakim olmak zorundasınız zira veri tabanı demek verileri analiz edip, işleyip, raporlayabilmeniz demektir ve bunun olmazsa olmazlarının en başında sorgular gelir.
Cevapla
#5
(Dün, 23:04)atoykan yazdı: sorgunuz
SELECT tbl_Sales.SiparisKodu, Sum(tbl_Sales.Miktar) AS ToplaMiktar, Sum(tbl_Logistic.Sevk) AS ToplaSevk, Sum(tbl_Sales.Miktar) - Sum(tbl_Logistic.Sevk) AS Kalan
FROM tbl_Sales
LEFT JOIN tbl_Logistic ON tbl_Sales.SiparisKodu = tbl_Logistic.SiparisKodu
GROUP BY tbl_Sales.SiparisKodu;
şeklinde olmalı. tbl_sales ve tbl_logistics tablolarını SiparisKodu üzerinden birleştimek için LEFT JOIN kullanmalısınız. Bu her siparişin tbl_sales tablosundaki tüm kayıtlarının alınmasını ve tbl_logistics tablosundaki eşleşmeyen kayıtların da null olarak döndürülmesini sağlar. Böylece istediğiniz sipariş koduna göre gruplanmış olarak tüm kayıtların miktar ve sevk toplamlarını alarak kalanı hesaplayabilirsiniz.

Sorularınızdan vardığım sonuç şu Sevgili @truhi = Sorgular ile ilgili eksikleriniz var. JOIN, LEFT JOIN, RIGHT JOIN, TRANSPOSE gibi karışık görünen sorguların yanı sıra tüm temel sorgulamaları, işleyişlerini, syntaxlarını iyice incelemelisiniz. Bunlara çok iyi hakim olmak zorundasınız zira veri tabanı demek verileri analiz edip, işleyip, raporlayabilmeniz demektir ve bunun olmazsa olmazlarının en başında sorgular gelir.

Hocam destek ve emekleriniz için teşekkürler,
tespitiniz çok doğru Sql kodları oluşturmada (JOIN, LEFT JOIN, RIGHT JOIN, TRANSPOSE) benim eksikliğim mevcut,
bu konuda kendimi nasıl geliştirebileceğimi bilmiyorum,
bu konuda ücreti karşılığında bana eğitim vermeniz mümkün müdür?

iyi Çalışmalar.
truhi, 29-09-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#6
Rica ederim, iyi çalışmalar.

(2 saat önce)truhi yazdı: Hocam destek ve emekleriniz için teşekkürler,
tespitiniz çok doğru Sql kodları oluşturmada (JOIN, LEFT JOIN, RIGHT JOIN, TRANSPOSE) benim eksikliğim mevcut,
bu konuda kendimi nasıl geliştirebileceğimi bilmiyorum,
bu konuda ücreti karşılığında bana eğitim vermeniz mümkün müdür?
Bu konuda internette ingilizceniz iyiyse oldukça fazla sayıda kaynak mevcut ama malesef Türkçe kaynaklar son derece sınırlı ve yüzeysel. Ücreti falan geçtim zamanım olsa seve seve yardımcı olurum öğrenmenize ancak yoğunluğum nedeniyle benim bir eğitim vermem mümkün değil malesef.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task