我很抱歉,如果我聽起來很傻,但我一直沒有使用sql提示,而且我正在爲學校的某些章節複習工作。我無法把頭纏到他們身上。在sql查詢中使用'提示'
舉例來說,有一個問題我沒有在Oracle測試數據庫我做了是「顯示拍賣的每日總人數的前10%,在我的答案是(這工作):
SELECT DAYOFWEEK, DAILY_TOTAL
FROM (
SELECT T.DAYOFWEEK,
SUM(AF.TOTAL_NUM_OF_AUCTIONS) AS DAILY_TOTAL,
CUME_DIST() OVER (ORDER BY SUM(AF.TOTAL_NUM_OF_AUCTIONS) ASC) AS Percentile
FROM TIME_DIM T, AUCT_FACT AF
WHERE AF.TIME_ID = T.TIME_ID
GROUP BY T.DAYOFWEEK)
WHERE Percentile > .9
ORDER BY Percentile DESC;
我現在面臨的問題是,對我來說,嘗試用不同的查詢來實現這個輸出,我問我的老師,他們說他們的意思是使用提示,我查看了我對他們的記錄,它確實沒有不足以解釋如何優化這個帶有提示的查詢,或者以更簡單的方式來完成這個查詢。
任何幫助真的很感謝
=)謝謝你們!
此查詢是否可以工作?內聯視圖具有anlaytic功能和「group by」。我不認爲你可以擁有兩者。 – redcayuga 2011-05-23 19:11:35
你說你的老師說的是錯的。提示永遠不會改變查詢的邏輯結果(如果他們這樣做,這將是一個錯誤)。 – 2011-05-24 05:28:45