AccessTr.neT

Tam Versiyon: Sorguda Dikey Alanı Yatay Olarak Düzenlemek
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Kıymetli Hocalarım merhaba;

Ekli database' de iki tablodan bir sorgu oluşturmaya çalışıyorum.

Sorgunun mevcut halinde 3 sütun mevcut: "RegisterType", "ProformaMoney" ve "ToplaTotalPrice"

Burada "ProformaMoney" alanını, burada yer alan para birimlerini EURO, USD ve GBP olarak 3 sütun oluşturarak;
her bir para biriminin toplamını alacak şekilde bir sorgu oluşturulabilir mi?

Özetle: "ProformaMoney" sütunu yerine 3 ayrı (xEURO, xUSD, xGBP) sütun olacak ve bu para birimine uyanları kendi sütununda toplamını alacak;
Bu durumda "ToplaTotalPrice" sütununa gerek kalmayacak, çünkü her para birimini kendi sütununda toplamış olacak

Kod:
SELECT tbl_Orders.RegisterType, tbl_Orders.ProformaMoney, SUM(tbl_Products.TotalPrice) AS ToplaTotalPrice
FROM tbl_Orders LEFT JOIN tbl_Products ON tbl_Orders.id = tbl_Products.IE
GROUP BY tbl_Orders.RegisterType, tbl_Orders.ProformaMoney;


Değerli destekleriniz için şimdiden teşekkürler,

iyi Çalışmalar.
Bunu çapraz sorguyla yapabilirsiniz. Yapmak istediğiniz sorgu aşağıdaki gibimi olacak.
TRANSFORM Sum(tbl_Orders.Parite) AS ToplaParite
SELECT tbl_Orders.id, tbl_Orders.CompanyName, Sum(tbl_Orders.Parite) AS [Toplam Parite]
FROM tbl_Orders
GROUP BY tbl_Orders.id, tbl_Orders.CompanyName
PIVOT tbl_Orders.ProformaMoney;
Kod:
SELECT tbl_Orders.RegisterType, tbl_Orders.ProformaMoney, SUM(tbl_Products.TotalPrice) AS ToplaTotalPrice
FROM tbl_Orders LEFT JOIN tbl_Products ON tbl_Orders.id = tbl_Products.IE
GROUP BY tbl_Orders.RegisterType, tbl_Orders.ProformaMoney;

Sorgunuzdaki alanlar Transform Query için yetersiz o yüzden ufak bir hile yapıp ToplaTotalPrice alanını BirimsizTotal olarak dahil edilerek istediğiniz sonuç büyük ölçüde aşağıdaki sorgu ile alınır.
TRANSFORM Sum(qry_Reports.ToplaTotalPrice) AS Total
SELECT qry_Reports.RegisterType, Sum(qry_Reports.ToplaTotalPrice) AS [BirimsizTotal]
FROM qry_Reports
GROUP BY qry_Reports.RegisterType
PIVOT qry_Reports.ProformaMoney;
İlk sorgunuza dahil edebileceğiniz alan mevcut ise ona göre ayrıca değerlendirilebilir. Yoğunluktan sadece sorgunuza bakabildim çalışmanızı inceleme, mantığını anlamaya çalışma fırsatım yok ne yazıkki şu sıralar.
(27/12/2024, 01:35)atoykan yazdı: [ -> ]
Kod:
SELECT tbl_Orders.RegisterType, tbl_Orders.ProformaMoney, SUM(tbl_Products.TotalPrice) AS ToplaTotalPrice
FROM tbl_Orders LEFT JOIN tbl_Products ON tbl_Orders.id = tbl_Products.IE
GROUP BY tbl_Orders.RegisterType, tbl_Orders.ProformaMoney;

Sorgunuzdaki alanlar Transform Query için yetersiz o yüzden ufak bir hile yapıp ToplaTotalPrice alanını BirimsizTotal olarak dahil edilerek istediğiniz sonuç büyük ölçüde aşağıdaki sorgu ile alınır.
TRANSFORM Sum(qry_Reports.ToplaTotalPrice) AS Total
SELECT qry_Reports.RegisterType, Sum(qry_Reports.ToplaTotalPrice) AS [BirimsizTotal]
FROM qry_Reports
GROUP BY qry_Reports.RegisterType
PIVOT qry_Reports.ProformaMoney;
İlk sorgunuza dahil edebileceğiniz alan mevcut ise ona göre ayrıca değerlendirilebilir. Yoğunluktan sadece sorgunuza bakabildim çalışmanızı inceleme, mantığını anlamaya çalışma fırsatım yok ne yazıkki şu sıralar.

Teşekkürler Hocam
Rica ederim, iyi çalışmalar.