SELECT people.first_name AS "First Name", people.last_name AS "Last Name", countries.name AS "Country1", territories.name AS "Territory1", cities.name AS "City1", countries.name AS "Country2", territories.name AS "Territory2", cities.name AS "City2"
FROM adb_people AS people
JOIN root_cities AS cities ON people.city1 = cities.id
AND people.city2 = cities.id
JOIN root_territories AS territories ON people.prov_state1 = territories.id
AND people.prov_state2 = territories.id
JOIN root_countries AS countries ON people.country1 = countries.id
Lo que estoy tratando de hacer aquí es vincular Country1 (id) a Country1 (name) y mostrar solo el nombre. Este ejemplo de código solo funciona si Country1, Territory1, City1 son lo mismo que Country2, Territory2, City2MySQL JOIN ¿Múltiples uniones en la misma mesa?
Me imagino que mi problema es cómo estoy haciendo mi JOIN. Soy nuevo en el lado SQL de las cosas. He leído en JOINS en Internet (búsqueda de Google y he leído los primeros tutoriales), pero nada de lo que he leído ha sido de ayuda en este caso.
Realmente agradecería cualquier ayuda con lo que estoy haciendo mal aquí. ¿Tal vez un empujón en la dirección correcta?
Duh, ¿Por qué no lo intenté para empezar? Lo implementaré ahora y te haré saber cómo funciona. ¡Gracias! – rlemon
¿Todavía no tiene esta respuesta el problema de que solo funciona si city1 = city2? –
No debería, no. Acabo de editar la consulta porque olvidé cambiar los alias de mi tabla en la parte de selección de copiar/pegar, si eso es lo que te refieres? –