Relacionar tablas mysql

loveshino

Bovino adolescente
#1
Hola bakunos! hace rato que no los venia a molestar y que mas quisiera que no hacerlo pero el aprendizaje es duro T__T Mi duda esta hoy con mysql, pues sigo sin entender como relacionar 2 tablas para una sola salida. Explico, digamos que tenemos 2 tablas, una de ciudades y otra de paises: CIUDADES ID CIUDAD PAIS 1 MEXICO 1 2 SEATLE 2 3 CANCUN 1 4 MADRID 3 5 ATLANTA 2 6 ZARAGOZA 3 PAISES ID PAIS CV 1 ESPAÑA 3 2 USA 2 3 MEXICO 1 Y quisiera, con una sola consulta combinada, una salida asi: MEXICO - MEXICO SEATLE - USA CANCUN - MEXICO MADRID - ESPAÑA ATLANTA - USA ZARAGOZA - ESPAÑA ¿Qué sintaxis debo seguir? Gracias por las ideas, y es que este tema ya me tiene mareado.
 

Salandrews

Bovino maduro
#2
Pues para ser honesto, no entiendo mucho lo que queres.
¿Podrías poner las tablas ordenadas y sus campos correspondienes?

Por ejemplo:

Tabla1: ciudad
Id-ciudad nombre-ciudad
dato dato
dato dato

Tabla2: pais
Id-pais nombre-pais
dato dato
dato dato

etc.
Porque así revuelto, no entiendo nada. Y luego, ¿que es lo que quieres obtener? A mi me parece que es algo como de escalas de vuelo, pero no sé, no entiendo mucha la salida. Si te podes explicar mejor quizá pueda ayudarte.

Saludos
 
#3
Usa Inner Joins, Left Joins o Right Joins en tus consultas segun necesites.

Ejemplo:
Tenemos 2 tablas, "Maestro" y "Materias".
Maestros
IDMaestro | Apodo
1 ................Juan
2 ................Paco

Materias
IDMateria | Nombre | Maestro
5 ..............Algebra.... 1
6 ............. Español.... 2

Si se quiere conocer que materia es impartida por que maestro solo necesitamos realizar seleccionar la tabla de materias, pero si en vez de los numeros claves que identifican a los maestros queremos que nos muestre sus nombres, entonces necesitariamos usar un tipo de Inner.

Resultados:
"Select Materias.* Where Materias".
IDMateria | Nombre | Maestro
5 ..................Algebra... 1
6 ..................Español... 2

"Select Materias.Nombre, Maestros.Apodo Where Materias Inner Join Maestros On Materias.IDMateria = Maestros.IDMaestro".
Nombre | Apodo
Algebra.... Juan
Español.... Paco

Tambien debes saber que los Inner se te permiten unir dos o más tablas. Bueno eso es todo, espero haberte ayudado

Saludos!.


---
Para más infomación: http://www.aulaclic.es/sql/t_3_5.htm
 
Arriba