2012-01-10 99 views
0

我有一個數據庫,它目前記錄了某人執行某個過程的次數以及他們收到的得分。評分是通過選擇N,B或C的值來完成的。女士訪問:查詢計算出的百分比

我目前已經寫了一個查詢,它將計算過程完成的總次數和每個得分的接收次數。

下面是該查詢的結果(原:http://www.flickr.com/photos/mattcripps/6673555339/

Query Results

和這裏是代碼

TRANSFORM Count(ed.[Entry ID]) AS [CountOfEntry ID] 
SELECT ap.AdultProcedureName, ap.Target, Count(ed.[Entry ID]) AS [Total Of Entry ID] 
FROM tblAdultProcedures AS ap LEFT JOIN tblEntryData AS ed ON ap.AdultProcedureName = ed.[Adult Procedure] 
GROUP BY ap.AdultProcedureName, ap.Target 
PIVOT ed.Grade; 

如果給出的N或B中的得分如下視爲標準和C被視爲標準。有沒有一種方法可以在我的查詢中添加一些內容,以百分比的形式向我顯示我們標準化的程序數量以及下面的數量?

我真的不能把我的頭轉過來,所以任何幫助都會很棒。

在此先感謝

+1

不完全是這樣,但您可以獲得由一行組成的交叉表查詢,並且您可以使用該查詢作爲另一個查詢的基礎,但是,我建議您以更傳統的方式進行此操作並使用報表目前的百分比。 – Fionnuala 2012-01-10 21:01:57

+0

@Remou我怎麼能在報告中這樣做呢? – user1132612 2012-01-11 13:58:35

+0

@ user1132612您可以像現有的那樣編寫普通的交叉表查詢,然後將其封裝在選擇查詢中,以便它將交叉表查詢用作select查詢中的表。 – 2012-01-11 14:19:00

回答

0
UPDATE TabProd 
SET PrecProd = (PrecProd * 1.1) 
WHERE Código IN (1,2,3,4) 
0

我確實非常相似,這在相當大的規模的東西。

我的問題是需要能夠在特定(但用戶變量)時間範圍內運行查詢,並輸出報告中總結果的相似百分比。

我不會進入日期問題,但我的解決方案是在我的特定拒絕標準的總行上運行「sum」函數以獲得拒絕的總數,然後使用除法表達式來創建新的列元素(定義的表達式)放在同一個查詢中,從「總淨生產量」的連接表中提取 - 由共同的參考作業ID加入。

對於您的情況,您可能想要總結兩種故障類型 - 您只需添加定義的表達式即可將總實例劃分爲各種故障模式,並在輸出報告中將格式設置爲百分比。要完成報告的數據部分,您需要第三個表達式來定義您的「非失敗百分比」 - 這將是1.0 - N /總計 - B /總計 - 您將在查詢中預先定義這兩者,以確定N和B故障率。

然後它將信息拉入您的報告和格式。它絕對可以完成。

希望這會有所幫助。