Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Boas práticas e dicas para construção de uma consulta sql:


Expandir
titleDica 1

Ao escrever uma cláusula WHERE, sempre colocar a cláusula mais restritiva antes. Qual é a condição mais restritiva? A condição na cláusula WHERE de uma instrução que retorna o menor número de linhas de dados.

...

titleVeja um
Expandir

Exemplo:

SELECT COUNT(1) from ppessoa where (sexo = 'M')  -- 348260 linhas

 SELECT COUNT(1) from ppessoa WHERE (GRAUINSTRUCAO = '5') -- 966 linhas

Sendo assim:

select * from ppessoa where (GRAUINSTRUCAO = '5') AND (sexo = 'M') --certo

select * from ppessoa where (sexo = 'M') and (GRAUINSTRUCAO = '5')  --errado

Obs.: Na maioria das vezes durante a análise do plano de execução o próprio sgbd* faz essa troca internamente para aprimorar sua própria busca, contudo essa ação gera custos para ele o ideal é não deixar essa tarefa para ele e garantir o melhor resultado de sua consulta.





  • Evitar cláusulas WHERE que utilizam colunas não indexadas ou solicitar a criação do índice para a equipe de banco de dados. É muito importante avaliar quais colunas da tabela serão apresentadas no resultado bem como quais colunas participam da cláusula WHERE, caso tais colunas estejam dentro de um índice ‘não clusterizado’, será o caminho mais performático para sua consulta.

...