Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Otimizando a consulta do MySQL com várias junções à esquerda

  • Certifique-se de que você tenha índices nos campos que estão em suas instruções WHERE e condições ON, as chaves primárias são indexadas por padrão, mas você também pode criar índices manualmente, se necessário.

  • Verifique se você realmente precisa selecionar todas as colunas em todas as tabelas? Caso contrário, certifique-se de selecionar apenas as colunas necessárias, evite usar selecionar*

  • Verifique se você realmente precisa de LEFT JOINS, se não, use INNER JOINs.

  • Se o desempenho ainda for um problema depois que você terminar de ajustar sua consulta, considere desnormalizar seu esquema para eliminar junções

  • Você também pode considerar reduzir a carga no banco de dados usando aplicativos de cache como sphinxsearch e memcached

  • Verifique se nenhuma de suas junções são para visualizações em vez de tabelas reais

referências:

http://www.sphinxsearch.com

http://dev.mysql.com/doc/refman /5.0/en/create-index.html