Dicas
Você pode usar comentários em uma instrução SQL para passar instruções ou dicas para o otimizador do banco de dados Oracle. O otimizador usa essas dicas como sugestões para escolher um plano de execução para a instrução.
Um bloco de instrução pode ter apenas um comentário contendo dicas, e esse comentário deve seguir o SELECT
, UPDATE
, INSERT
ou DELETE
palavra-chave. A sintaxe a seguir mostra dicas contidas em ambos os estilos de comentários que o Oracle suporta em um bloco de instrução.
{DELETE | INSERT | SELECT | UPDATE} / * + hint] ... * /
ou
{DELETE | INSERT | SELECT | UPDATE} - + hint] ...
onde:
-
DELETE
,INSERT
,SELECT
, ouUPDATE
é umDELETE
,INSERT
,SELECT
ouUPDATE
palavra-chave que inicia um bloco de instrução. Comentários contendo dicas podem aparecer somente após essas palavras-chave. -
+ é um sinal de mais que faz com que o Oracle interprete o comentário como uma lista de dicas. O sinal de mais deve seguir imediatamente após o delimitador de comentário (nenhum espaço é permitido).
-
hint
é uma das dicas discutidas em esta seção. O espaço entre o sinal de mais e a dica é opcional. Se o comentário contiver várias dicas, separe-as por pelo menos um espaço. -
text
é outro texto de comentário que pode ser intercaladas com as dicas.
O banco de dados Oracle trata as dicas com erros ortográficos como comentários regulares e não retorna um erro.
Muitas dicas podem ser aplicadas a tabelas específicas ou índices e mais globalmente para tabelas em uma exibição ou para colunas que fazem parte de índices. Os elementos sintáticos tablespec
e indexspec
definem essas dicas globais. Para obter informações sobre quando usar dicas globais e como o Oracle as interpreta, consulte o Oracle Database Performance Tuning Guide.
tablespec :: =
Descrição da ilustração tablespec.gif
indexspec :: =
Descrição da ilustração indexspec.gif
Tabela 2- 22 lista as dicas por categoria funcional e contém referências cruzadas para sua sintaxe. (Em HTML e PDF, as referências cruzadas são hiperlinks.) Uma lista alfabética das dicas, incluindo sintaxe, segue a tabela.
Consulte também: p
all_rows_hint :: =
Descrição da ilustração all_rows_hint.gif
append_hint :: =
Descrição da ilustração append_hint.gif
cache_hint :: =
Descrição da ilustração cache_hint.gif
cluster_hint :: =
Descrição da ilustração cluster_hint.gif
cursor_sharing_exact_hint :: =
Descrição da ilustração cursor_sharing_exact_hint.gif
driving_site_hint :: =
Descrição da ilustração driving_site_hint.gif
dynamic_sampling_hint :: =
Descrição da ilustração dynamic_sampling_hint.gif
fact_hint :: =
Descrição da ilustração fact_hint.gif
first_rows_hint :: =
Descrição da ilustração first_rows_hint .gif
full_hint :: =
Descrição da ilustração full_hint.gif
hash_hint :: =
Descrição da ilustração hash_hint.gif
index_hint :: =
Descrição da ilustração index_hint.gif
index_asc_hint :: =
Descrição da ilustração index_asc_hint.gif
index_combine_hint :: =
Descrição da ilustração index_combine_hint.gif
index_desc_hint :: =
Descrição da ilustração index_desc_hint.gif
index_ffs_hi nt :: =
Descrição da ilustração index_ffs_hint.gif
index_join_hint :: =
Descrição da ilustração index_join_hint.gif
index_ss_hint :: =
Descrição da ilustração index_ss_hint.gif
index_ss_asc_hint :: =
Descrição da ilustração index_ss_asc_hint.gif
index_ss_desc_hint :: =
Descrição da ilustração index_ss_desc_hint.gif
leader_hint :: =
Descrição da ilustração leader_hint.gif
merge_hint :: =
Descrição da ilustração merge_hint.gif
noappend_hint :: =
Descrição da ilustração noappend_hint.gif
nocache_hint :: =
Descrição da ilustração nocache_hint.gif
no_expand_hint :: =
Descrição da ilustração no_expand_hint.gif
no_fact_hint :: =
Descrição da ilustração no_fact_hint.gif
no_index_hint :: =
Descrição da ilustração no_index_hint.gif
no_index_ffs_hint :: =
Descrição da ilustração no_index_ffs_hint.gif
no_index_ss_hint :: =
Descrição da ilustração no_index_ss_hint.gif
no_merge_hint :: =
De descrição da ilustração no_merge_hint.gif
no_parallel_hint :: =
Descrição da ilustração no_parallel_hint.gif
Restrição de NO_PARALLEL
Você não pode paralelizar uma consulta envolvendo uma tabela aninhada.
no_parallel_index_hint :: =
Descrição da ilustração no_parallel_index_hint.gif
no_push_pred_hint :: =
Descrição da ilustração no_push_pred_hint.gif
no_push_subq_hint :: =
Descrição da ilustração no_push_subq_hint.gif
no_rewrite_hint :: =
Descrição da ilustração no_rewrite_hint.gif
no_query_transformation_hint :: =
Descrição da ilustração no_query_transformatn_hint.gif
no_star_transformation_hint :: =
Descrição da ilustração no_star_transformation_hint.gif
no_unnest_hint :: =
Descrição da ilustração no_unnest_hint.gif
no_use_hash_hint :: =
Descrição da ilustração no_use_hash_hint.gif
no_use_merge_hint :: =
Descrição da ilustração no_use_merge_hint.gif
no_use_nl_hint :: =
Descrição da ilustração no_use_nl_hint.gif
Order_hint :: =
Descrição da ilustração Order_hint.gif
parallel_hint :: =
Descrição da ilustração parallel_hint.gif
O Oracle ignora dicas paralelas em uma tabela temporária. Consulte CREATE TABLE e Oracle Database Concepts para obter mais informações sobre execução paralela.
parallel_index_hint :: =
Descrição da ilustração parallel_index_hint .gif
pq_distribute_hint :: =
Descrição da ilustração pq_distribute_hint.gif
Veja Além disso:
Oracle Database Performance Tuning Guide para as combinações permitidas de distribuições para as tabelas de junção externa e interna
push_pred_hint :: =
Descrição da ilustração push_pred_hint.gif
push_subq_hint :: =
Descrição da ilustração push_subq_hint.gif
qb_name :: =
Descrição da ilustração qb_name_hint.gif
rewrite_hint :: =
Descrição da ilustração rewrite_hint.gif
rule_hint :: =
Descrição da ilustração ration rule_hint.gif
spread_min_analysis_hint :: =
Descrição da ilustração spread_min_analysis_hint.gif
star_transformation_hint :: =
Descrição da ilustração star_transformation_hint.gif
unnest_hint :: =
Descrição da ilustração unnest_hint.gif
use_concat_hint :: =
Descrição da ilustração use_concat_hint.gif
use_hash_hint :: =
Descrição da ilustração use_hash_hint.gif
use_merge_hint :: =
Descrição da ilustração use_merge_hint.gif
use_nl_hint :: =
Descrição da ilustração use_nl_hint.gif
use_nl_with_index_hint :: =
Descrição da ilustração use_nl_with_index_hint.gif