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

Consulta mysql lenta, copiando para a tabela tmp, usando filesort


NULL vs NOT NULL -- Use NOT NULL a menos que você tenha um motivo comercial para NULL .

Use o InnoDB com PRIMARY KEY relevante em cada mesa. Isso provavelmente será mais rápido.

"Usar o índice", onde faz sentido, ajudará alguns.

product.categoryid = 4871 não pertence ao ON cláusula para vendorimport; mova-o para um WHERE cláusula. (Isso não vai acelerar as coisas.)

Sua consulta não pode ser otimizada ainda mais -- ela deve faça todos os JOINs e entregue todas as linhas.

Mas... Você realmente quer 3917 linhas de saída? Você pode lidar com isso? Talvez você queira apenas alguns deles e possa filtrá-los durante o SELECT? Isso pode acelerar as coisas.