如果我的提问听起来很愚蠢,我很抱歉,但我没有长时间使用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;我现在的问题是,它说,对于我来说,试图用一个不同的查询来实现这个输出,我问我的老师,他们说他们的意思是使用提示,我看了一下他们的笔记,它真的没有充分解释如何使用提示优化这个查询,或者以一种更简单的方式来做。
任何帮助都将不胜感激
=)谢谢大家!
发布于 2011-05-24 03:53:25
提示是您在查询中包含的选项,用于指示成本基础优化器使用哪些索引。看起来每日总计是您可以对其执行摘要索引的东西。
https://stackoverflow.com/questions/6101561
复制相似问题