ばかげた質問に聞こえたら申し訳ありませんが、SQL ヒントを長い間使用しておらず、学校の章の復習作業を行っています。頭をそれらに巻き付けるのに苦労しています。
たとえば、私が作成したテストデータベースでオラクルで行った1つの質問は、「毎日のオークションの合計数の上位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;
私が今抱えている問題は、別のクエリでこの出力を達成しようとすることです。先生に尋ねたところ、ヒントを使用するつもりだと彼らは言いました。ヒントを使用してこのクエリを最適化する方法や、より簡単な方法でそれを行う方法を十分に説明していません。
どんな助けでも本当に感謝します
=) みんなありがとう!