STRAIGHT_JOIN y el order de las tablas en JOINs de MySQL

In: mysql

28 jul 2009

High Performance MySQLSegún leo en un artículo, el optimizador de JOINs de puede cambiar el orden en que se realizan los JOINs.

Al autor del artículo, las consultas de una aplicación le tardaban casi un minuto. Después de buscar una solución, decubrió que poniendo “SELECT STRAIGHT_JOIN …“, obligaba a a tratar las tablas de los JOINs en el orden en que se establecían, es decir, primero la de la izquierda y después la de la derecha.

Según el manual de :

STRAIGHT_JOIN is similar to JOIN, except that the left table is always read before the right table. This can be used for those (few) cases for which the join optimizer puts the tables in the wrong order.

Entradas relacionadas:

  1. Diferencias entre mysql, mysqli y PDO en PHP
  2. Diferencias entre ENUM y SET en MySQL
  3. Función GROUP_CONCAT de MySQL
  4. La selectividad de los índices en MySQL
  5. Trabajando con el tipo de campo BIT de MySQL en PHP

Formulario de Comentario

Página 1 de 0

Sobre este blog

Este blog informático pretende ser un blog de notas o portafolio de información variada: trozos de código, descubrimientos, notas sueltas, ... Para tenerla a mano, y ser compartida.