Как использовать подсказку FULL для подсчета всего в Oracle
Я новичок в концепции использования оптимизатора подсказок в Oracle и хотел бы понять, правильно ли я использую подсказку FULL
У меня есть запрос
SELECT COUNT(*) FROM MyTable
WHERE MyTable.name='RandomName'
Итак, скажем, результат получил меня 12345
Теперь, если я хочу использовать подсказку FULL, это так, как это должно быть написано ниже?
SELECT /*+ FULL(e) */ count(*)
FROM MyTable e
WHERE MyTable.name='RandomName'
Результат тоже 12345 это нормально?
Спасибо
1 ответ
Решение
Да, это как бы указать подсказку для Oracle. В этом случае это должно привести к полному сканированию таблицы (без использования какого-либо индекса, который вы можете иметь на name
колонка).
И результат, конечно, будет таким же. Если использование индексов изменит результат, это сделает их довольно бесполезными.