Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: gatoher en 06 de Octubre 2016, 20:01

Título: Select de tablas relacionadas 1 a muchos ejemplo INNER JOIN sacar varios datos
Publicado por: gatoher en 06 de Octubre 2016, 20:01
Hola a todos, la verdad que me he quedado parado con una select que quiero hacer y me he quedado.

La simplifico, a ver:

Hay 3 tablas como veis Post digamos es la central y tiene una relación de 1 => muchos con usuario y tiempo_cambio. Yo quiero en una select por ejemplo recuperar el nick del usuario y el tiempo de cambio de la tabla tiempo de cambio.

Por ejemplo esta select recupera el nick de la tabla usuario, Como comento es un ejemplo simplificado:

select nick from usuario as usu, post as p where p.idUsuario = usu.idUsuario and p.idUsuario = 12

¿Yo podría en una misma select sacar tiempo de la tabla tiempo_cambio y el nick del usuario?

Esquema de las tablas:

Tabla usuario: idUsuario (INT), nick (VARCHAR 25), password (CHAR 12), email (VARCHAR 45), fecha (DATE), admin (TINYINT 1)

Tabla post: idPost (INT) idUsuario (INT), secciones_idsecciones (TINYINT 20), tiempo_cambio_idTiempoCambio (INT), titulo (VARCHAR 60), comentario (VARCHAR 255), precio (VARCHAR 10), fechaPost (DATE)

Tabla tiempo_cambio: idTiempoCambio (INT), tiempo (VARCHAR 25)

Título: Re:Select de tablas relacionadas de 1 a muchos
Publicado por: DRANXZ88 en 06 de Octubre 2016, 20:34
Podes usar inner join para unir las tabla un ejemplo seria algo así.
Código: [Seleccionar]
select * from post p
    inner join usuario u on p.idUsuario=u.idUsuario
    inner join tiempo_cambio t on p.idTiempoCambio=t.idTiempoCambio
    where p.idPost= 12
Con where también se puede unir pero sera muy largo nomas la condición.
Título: Re:Select de tablas relacionadas de 1 a muchos
Publicado por: gatoher en 06 de Octubre 2016, 22:10
Hola DRANXZ88, si ya lo había hecho. Me había quedad to loco sabes  ;D. Gracias de todas formas  ;)