2 messages in com.mysql.lists.mysql-esRe: dos joins a una misma tabla
FromSent OnAttachments
Gustavo Pardo17 Jan 2006 14:53 
Gustavo Pardo18 Jan 2006 16:15 
Subject:Re: dos joins a una misma tabla
From:Gustavo Pardo (data@gmail.com)
Date:01/18/2006 04:15:17 PM
List:com.mysql.lists.mysql-es

El Mar 17 Ene 2006 19:54, Gustavo Pardo escribió:

hola lista,

una consulta, necesitaría hacer algo así como:

gracias a los que respondieron, la clave de la cosa era referirse a los campos explícitamente en el SELECT y no con un * además, los campos que se iban a repetir (el nombre del contratista para el caso) debe asignársele un alias.

tomando un ejemplo de los comentarios del manual en: http://dev.mysql.com/doc/refman/4.1/en/join.html

SELECT adverts.*, categories.description AS cat_desc, regions_1.description AS region1_desc,regions_2.description AS region2_desc,regions_3.description AS region3_desc FROM adverts RIGHT JOIN regions AS regions_3 ON regions_3.regionID=adverts.region3 RIGHT JOIN regions AS regions_2 ON regions_2.regionID=adverts.region2 RIGHT JOIN regions AS regions_1 ON regions_1.regionID=adverts.region1 INNER JOIN categories ON categories.categoryID=adverts.categoryID

en este caso el debe repetir regiones y las nombra explícitamente en el select y les da un alias para luego referirse a ellas.

saludos.