Использование 'HINTS' в SQL-запросе - PullRequest
1 голос
/ 23 мая 2011

Прошу прощения, если я звучу глупо, спрашивая, но я давно не использую sql hints, и я перебираю некоторые обзоры глав для школы. У меня проблемы с тем, чтобы обернуть голову вокруг них.

Например, один вопрос, который я задал в оракуле в тестовой базе данных, который я задал, был: «Показать 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;

Проблема, с которой я столкнулся сейчас, заключается в том, что я пытаюсь добиться этого с помощью другого запроса, который я задал своему учителю, и они сказали, что они хотят использовать подсказки, я просмотрел свои заметки на них и на самом деле он недостаточно подробно объясняет, как оптимизировать этот запрос с помощью подсказок или сделать это более простым способом.

Любая помощь будет по достоинству оценена

=) спасибо, ребята!

1 Ответ

1 голос
/ 23 мая 2011

Подсказки - это параметры, которые вы включаете в свой запрос, чтобы указать оптимизатору базовой стоимости, какие индексы использовать.Похоже, что ежедневный итог - это то, что вы можете использовать для сводного индекса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...