2016-05-25 87 views
0

不知道如何最好地解釋這一個,但我有一個表,例如如下:MS接入分組百分比計算

Date  WebSitePage Visits 
01/01/2016 Visits  50 
01/01/2016 Basket  40 
01/01/2016 CheckOut  35 
01/01/2016 ThankYou  25 
02/01/2016 Visits  43 
02/01/2016 Basket  23 
02/01/2016 CheckOut  20 
02/01/2016 ThankYou  12 

正如你可以看到他們的網頁(虛構的這個例子) 。我想創建一個查詢,無論是訪問查詢計算還是SQL或VBA(由於您無法在Access SQL中使用CASE語句),計算WebSitePage轉換百分比,例如Basket/CheckOut,CheckOut/ThankYou以及一個訪問轉換感謝/訪問等

我很努力如何編譯查詢或寫入計算。 它通常在Excel中很簡單。但我也不想將WebSitePage拆分爲單獨的列。

任何人都可以指向正確的方向嗎?

回答

0

您可以使用該查詢來獲得4張不同的數在4個不同的欄目,使任務更容易:

SELECT [Date], 
     Sum(IIf(WebSitePage = "Visits", Visits, 0)) AS Visits, 
     Sum(IIf(WebSitePage = "Basket", Visits, 0)) AS Basket, 
     Sum(IIf(WebSitePage = "CheckOut", Visits, 0)) AS CheckOut, 
     Sum(IIf(WebSitePage = "ThankYou", Visits, 0)) AS ThankYou 
FROM  mytable 
GROUP BY [Date] 

注意與IIf就可以解決,你會用更多的CASE WHEN表達式問題ISO-兼容的SQL數據庫。

如果您保存上面的語句中的MS Access查詢(我們稱之爲更改爲MyQuery),那麼你可以做這樣的事情:

SELECT [Date], 
     100*Basket/CheckOut AS Basket_CheckOut_Pct, 
     100*CheckOut/ThankYou AS CheckOut_ThankYou_Pct, 
     100*ThankYou/Visits AS ThankYou_Visits_Pct 
FROM  MyQuery 
+0

感謝@trincot,我現在就給出一個裂縫,並得到很快回到你身邊。 –

+0

它對你有用嗎? – trincot

+0

嗨,沒有機會嘗試一下,因爲我在過去幾週一直在做一個不同的項目。應該回到這個星期,所以我會回來讓你知道。謝謝 :) –