2015-09-04 88 views
0

嗨我想創建一個查詢,可以給我幾個公司之間表現最好的程序。訪問2010性能查詢

我有一張桌子上有幾家公司,程序中有幾家公司有一個程序,其他人沒有,所以我知道那些將是最好的表現。我想要一個查詢來舉例說明。

CompanyTwo,方案一,12.85%
CompanyOne,方案二,12.56%
CompanyTwo,方案三,1%

.....等等...

表看起來像這樣。

公司名稱,ProgramName中,PerformancePercentage,ProgramYear
CompanyOne,方案一,10.04%,2015年
CompanyOne,方案二,12.56%,2015年
CompanyTwo,方案一,12.85%,2015年
CompanyTwo,方案二,9.5%,2015年
CompanyTwo,方案三,1%,2015年

+0

我嘗試了總計查詢,但我不能獲取正常工作。如果我刪除公司名稱並將百分比字段設置爲最大值,它會向我顯示哪些程序執行得最好,但我不知道哪個公司負責正在執行的程序。 – Bill

回答

0

您的查詢是有點複雜,要求要麼2個查詢或相關子查詢。下面我提供了後者。

SELECT BestPerfByProg.program, Table1.company, BestPerfByProg.BestPerf 
FROM Table1 
INNER JOIN (SELECT Table1.program, Max(Table1.Performance) AS BestPerf 
      FROM Table1 
      WHERE table1.period = 2015 
      GROUP BY Table1.program 
      ) AS BestPerfByProg ON (Table1.program = BestPerfByProg.program) 
           AND (Table1.Performance = BestPerfByProg.BestPerf) 
ORDER BY BestPerfByProg.program; 

如果要讓它在2枚,這是()之間的部分開始,並保存爲BestPerfByProg

+0

我需要表現最佳的節目和那些在這些節目中表現最出色的公司。在這28個項目中,我們有28個項目和16個公司想知道哪些公司做得最好。希望是,我們可以找出爲什麼該公司在該計劃上做得更好。所有16家公司參加了28個項目。 – Bill

+0

我想它並不是頂尖的課程,我需要知道哪個公司在28個項目中表現最出色,所以我想要一個列出所有28個項目的比例最高的公司和哪個公司是成功的。我不應該說頂部。 – Bill