感謝您回答我以前的問題。我希望可以這樣做,但我現在有另外一個相關的問題:加入3個表格並按最大列值分組
我現在被要求擴展我在做的事情,包括將本地貨幣持有的GrossCost轉換爲GBP 。
我有兩個零件單獨的SQL,但不知道如何組合它們。這兩個部分是:
獲取GrossCost的總和每家公司:
Select Cast(ROW_NUMBER() OVER (ORDER BY Sum(JobCosting.PurchaseOrderItems.GrossCost) Desc) AS Int) As 'RowNum', Admin.Companies.UniqueName As 'UN', Sum(JobCosting.PurchaseOrderItems.GrossCost) As 'DonutValue' From Admin.Companies Inner Join JobCosting.PurchaseOrders On Admin.Companies.CompanyId = JobCosting.PurchaseOrders.SupplierCompanyId Inner Join JobCosting.PurchaseOrderItems On JobCosting.PurchaseOrders.PurchaseOrderId = JobCosting.PurchaseOrderItems.PurchaseOrderId Where UniqueName Like 'HH %' Group By UniqueName Order By 'DonutValue' Desc
獲取貨幣轉換率每種貨幣。轉換爲相關貨幣的GrossCost *匯率。這是匯率SQL(由SQLGRL提供 - 再次感謝):
SELECT * FROM (SELECT CompanyId, UniqueName,CurrencyCode,ExchangeRate,FromCurrencyID, ToCurrencyId, ActiveDate, rank() OVER (partition BY UniqueName,Admin.Currencies.CurrencyId ORDER BY ActiveDate DESC) AS Rank FROM Admin.Companies INNER JOIN Admin.Currencies ON Admin.Companies.CurrencyId = Admin.Currencies.CurrencyId INNER JOIN Admin.CurrencyRates ON Admin.Currencies.CurrencyId = Admin.CurrencyRates.FromCurrencyId WHERE Admin.CurrencyRates.ToCurrencyId = 47) ci
WHERE ci.Rank = 1
我需要做的是用組合的SQL是得到所有結束返回相同的行並計算每個公司的GrossSales總和的換算值。
再次,任何幫助將非常感激地收到,因爲我真的卡住了。
在此先感謝
非常感謝,因爲它給了我所需要的東西。 – enCue
在您的幫助之後,挑戰已經擴大,我再次陷入困境。任何幫助將受到感謝。 – enCue